Вычисление суммы элементов массива

Массивы. Основные операции

Таблица 1.7.3.

Рисунок 1.7.1.

Многомерные массивы

Таблица 1.7.1.

City City1
  М   М
  О   о
  С   с
  К   к
  В   в
  А   а
  /0    

Вышеописанный способ инициализации возможен только при объявлении массива. В программе используйте поэлементную инициализацию.

city [0]='м';

Кроме стандартного доступа к элементам массива C++ обеспечивает еще один. В C++ имя массива представляет собой не только имя, которое вы используете в своих программах, но и является адресом, по которому в памяти находится первый элемент массива. Поэтому к элементам массива можно обращаться следующими способами:

int m[6] = {4, 3, 1, 4, 7, 8 };m[3] Обращение к 4-му элементу массива.

Пример.

char names [ ]= {'М', 'о', 'с', 'к', 'в', 'а' }

Команда printf("%c",*names); выведет M (самый первый символ).

printf("%c", names[4]); выведет в (т.к. не забываем, что нумерация начинается с 0 символа).

Многомерные массивы - это массивы с более чем одним индексом.

Чаще всего используются двумерные массивы.

При описании многомерного массива необходимо указать C++, что массив имеет более чем одно измерение.

Пример 1.

int t[3][4];

Описывается двумерный массив, из 3 строк и 4 столбцов.

Элементы массива:

t[0][0] t[0][1] t[0][2] t[0][3]t[1][0] t[1][1] t[1][2] t[1][3]t[2][0] t[2][1] t[2][2] t[2][3]

При выполнении этой команды под массив резервируется место. Элементы массива располагаются в памяти один за другим.

Пусть это линейка памяти:

Пример 2.

int temp [3] [15] [10];

резервируется место под 3-х мерный массив.

В памяти многомерные массивы представляются как одномерный массив, каждый из элементов которого, в свою очередь, представляет собой массив.

Рассмотрим на примере двумерного массива.

int a[3][2]={4, l, 5,7,2, 9};

Представляется в памяти:

a[0][0] заносится значение 4
a[0][1] заносится значение 1
a[1][0] заносится значение 5
a[1][1] заносится значение 7
a[2][0] заносится значение 2
a[2][1] заносится значение 9

Второй способ инициализации при описании массива

int а[3][2]={ {4,1}, {5, 7}, {2, 9} };

Обращение к элементу массива производится через индексы.

printf("%d", a[0][0]);

Выдаст значение 4.

printf("%d", a[1][1]);

Выдаст знaчение 7.

Программа, которая инициализирует массив и выводит его элементы на экран.

#include <iostream.h> main (){int a[3] [2]={{1,2}, {3,4}, {5,6}};for (int i=0; i<=2; i++) {for(int j=0;j<=1;j++){printf("%d", a[i][j]); }} system("pause");}

При передаче массива в функцию всегда происходит передача его адреса. Т.е. в C++ все массивы передаются по адресу.

Дан массив X, состоящий из n элементов. Найти сумму элементов этого массива. Процесс накапливания суммы элементов массива достаточно прост и практически ничем не отличается от суммирования значений некоторой числовой последовательности. Переменной S присваивается значение равное нулю, затем последовательно суммируются элементы массива X. Блок-схема алгоритма расчета суммы перед вами:

Соответствующий фрагмент алгоритма программы будет иметь вид:

1 2 for (S=0, i=0; i<N; S+=X[i], i++); cout<<"S="<<"\n";

Пример программы для двухмерного массива:

int _tmain(int argc, _TCHAR* argv[])

{ int a[2][2]={ {2,3},{3,4}};

int s = 0;

for (int i = 0; i < 2; i++) {

for (int j = 0; j < 2; j++) {

s = s + a[i][j];

}

}

printf("%d", s);

printf("\n");

system("pause");

return 0;

}


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: