Цель работы: Изучение приемов объявления и обращения к массивам, использования функций и директивы define при работе с массивами.
Массивы – это набор объектов одинакового типа, доступ к которым осуществляется прямо по индексу в массиве. Обращение к массивам в (Турбо) Си осуществляется и с помощью указателей .
Массивы можно описывать следующим образом:
тип_данных имя_массива [ размер массива ];
Используя имя массива и индекс, можно адресоваться к элементам массива:
имя_массива [ значение индекса ]
Значения индекса должны лежать в диапазоне от нуля до величины, на единицу меньшей, чем размер массива, указанный при его описании.
Вот несколько примеров описания массивов:
char name [ 20 ];
int grades [ 125 ];
float income [ 30 ];
double measurements [ 1500 ];
Первый из массивов ( name ) содержит 20 символов. Обращением к элементам массива может быть name [0], name [1], …,name[19].
Второй массив ( grades ) содержит 125 целых чисел. Обращением к элементам массива может быть grades [0],grades [1],…,grades[124].
Третий массив ( incom ) содержит 30 вещественных чисел. Обращением к элементам массива может быть income [0], incom[1],…,income[29].
Четвертый массив (measurements ) содержит 1500 вещественных чисел с двойной точностью. Обращением к элементам массива может быть measurements[0],measurements[1],…,measurements[1499].
/* Программа, иллюстрирующая использование массивов */
/*Файл array.с*/#include <stdio.h>
#define size 1000
int data [size];
main ( )
{
extern float average (int a[ ], int s );
int i;
for ( i=0; i<size ; i++¬_)
data [ i ]¬¬¬¬¬¬¬¬= i;
printf ( “\nСреднее значение массива data =%f\n”,average (data,size));
}
float average (int a[ ] ,int s )
{
float sum=0.0;
int i;
for ( i=0; i<s ; i ++)
sum+=a[ i ];
return sum/s;
}
В программе заводится массив на 1000 целых чисел. При помощи функции average подсчитывается сумма элементов этого массива. Первым формальным параметром функции average является массив. В качестве второго параметра функции передается число суммируемых значений в массиве a. Обратите внимание на использование константы size (размер). Если изменяется размерность массива, задаваемая этой константой, то это не приводит к необходимости менять что-либо в самом коде программы.