Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Описание одномерного массива имеет следующий формат:
Тип имя_массива [n];
где n – размерность (количество элементов) массива является в общем случае константным выражением.
Такие одномерные массивы часто называют векторами.
Например:
int days [12];//массив days из 12 целых чисел
double mass [50];//массив mass из 50 вещественных чисел
Для доступа к элементу массива используется имя массива и его индекс в диапазоне от 0 до n-1, заключенный в квадратные скобки:
имя_массива [индекс]
Например:
mass [0] = 37.5;... mass [49] = 36.6;
Массивы можно инициализировать списком значений или выражений, отделенных запятой в фигурных скобках.
Например:
int days [12] = {27,15,11,5,28,9,14,31,21,15,19,27};
Если список значений короче длины массива, то инициализации подвергаются первые элементы массива, а остальным присваивается нулевое значение.
Например:
int a[5] = {3,12,4}; // a[0]=3, a[1]=12, a[2]=4, a[3]=0, a[4]=0
Массивы могут инициализироваться без указания индекса. В этом случае размерность определяется числом элементов в фигурных скобках.
Например:
int numbers [ ] = {1,2,3,4};//размерность равна четырем
В практических задачах часто используются двумерные массивы, т.е. массивы с двумя индексами. Они описываются следующим образом:
Тип имя_массива [ размер_1 ] [ размер_2 ]
С помощью таких массивов обычно отображаются матрицы.
Например:
const int k=5, r=3;
long m[k][k]; //матрица целых чисел размерности 5х5
float d[k][r]; //матрица целых чисел размерности 5х3
Инициализация двумерного массива осуществляется двумя способами:
1) представлением массива из массивов с заключением каждого массива-строки в свои фигурные скобки (в этом случае размерности можно не указывать);
2) заданием общего списка элементов в том порядке, в котором они располагаются в памяти.
Например:
int matr [ ][ ] = {{3,-4},{25,0},{-1,4}};
int matr [3][2] = {3,-4,25,0,-1,4};
Как и в одномерных массивах при инициализации двухмерных массивов можно присваивать значения не всем элементам.
Пример. Формирование треугольной матрицы.
int x [5][4] = {{11},{25,4},{-3,18,14},{2,17,9,15}};
что эквивалентно отображению матрицы:
При работе с массивами широко используются операторы цикла, особенно, for. Примером может служить задача сортировки массива с помощью "пузырькового" метода.
#include <iostream.h>
#include <math.h>
void main()
{
const int m=5; // Размерность массива чисел
double z[m]; //Тип чисел массива z
for(int i=0;i<m;i++) //Ввод элементов массива
{ cout<<"z["<<i<<"]=";cin>>z[i];}
for(int i=0;i<m-1;i++) //Начало алгоритма сортировки
{ double a;
for(int j=i+1;j<m;j++)
if (z[j]<z[i]) //'<'- сортировка по возрастанию
{a=z[i];z[i]=z[j];z[j]=a;}
} //Конец алгоритма сортировки
cout<<"z["<<m<<"]={";
for(int i=0;i<m;i++)
cout<<z[i]<<" ";cout<<"}"; //Вывод элементов массива
}
Дата публикования: 2014-11-02; Прочитано: 293 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!