Урок 9. Массивы в С++

Уроки для начинающих   14 марта 2012  Автор статьи:  
geekbrains.ru/

Для начала научимся создавать статический массив. Статический массив — это такой массив, который создается до начала выполнения программы.
Общий вид:
тип_данных имя_переменной[размер_массива];

Реализация выглядит так:

#include
#include
using namespace std;
int main()
{
freopen ("input.txt","r",stdin);
freopen ("output.txt","w",stdout);
int a[100];
string b[10];
char c[55];
double d[25];
bool e[3];
return 0;
}

После создания статического массива становится актуальным вопрос об его инициализации-заполнении его какими-либо данными. Приведем некоторые примеры инициализации массива.
I.Инициализация массива нулями
Изначально в массиве хранятся одному компьютеру (Богу) известные значения. Поэтому прежде чем работать с массивом, его обычно зануляют, т.е. присваивают всем элементам массива значения «0».
1 вариант зануления:

int a[100];
for (int i=0; i<100; i++) { a[i]=0; }

2 вариант зануления:

int a[100]={0};

II. Инициализация массива заданными значениями (считывание данных в массив)

int a[100];
for (int i=0; i<100; i++) { cin >> a[i]; // считываем элемент массива
}

III. Работа с массивами.

int a[100];
for (int i=0; i<100; i++) { a[i]=2*i+1; } a[25]=7;

IV. Вывод массива на экран

int a[100];
for (int i=0; i<100; i++) { a[i]=2*i+1; cout << a[i] << endl; }

Мы закончили с одномерными массивами,теперь перейдем к двумерным массивам.
Двумерные масссивы можно представиьт себе как шкаф с книгами, где сначала нужно указать номер полки,а потом номер книги на данной полке. Таким образом для обращения к элеменам массива мы должны использовать два индекса, вместо одного. Приведём пример считывания и вывода двумерного массива на экран.

int n,m;
cin >> n >> m;
int a[200][200]; //создаем массив размером 200x200
for (int i=0; i<200; i++) //просматриваем полку за полкой for (int j=0; j<200; j++) // на нужной полке просматриваем книги { cin >> a[i][j];
}
for (int i=0; i<200; i++) for (int j=0; j<200; j++) { cout << a[i][j]; //выводим результаты с просмотренных полок }


  • никита

    как же сортировки?

  • Mike Slavyanin

    int n,m;
    cin>>n>>m;
    ни к селу ни к городу

Научиться программировать

  • на Delphi

  • на Java

  • на C++

geekbrains.ru/
geekbrains.ru/