- •Алфавит языка
- •Идентификаторы
- •Структура программы
- •Переменные
- •Константы
- •Типы данных
- •Выражения и операции
- •Арифметические операции.
- •Выражения и операции
- •Операции отношения.
- •Логические операции.
- •Структура программы
- •Форматированный ввод с клавиатуры.
- •Scanf(“форматная_строка”, список_аргументов);
- •Форматированный вывод на экран.
- •Printf(“форматная_строка”, список_аргументов);
- •Операция присваивания.
- •Условный оператор if
- •If (выражение) оператор1; else оператор2;
- •If (выражение) оператор;
- •Оператор выбора (переключатель)
- •Операторы циклов
- •Цикл с предусловием while
- •Операторы циклов
- •Цикл с постусловием do-while
- •Операторы циклов
- •Цикл с параметром for
- •Массивы
- •Массивы
- •Одномерные массивы
- •Массивы
- •Массивы
- •Двумерные массивы
- •Массивы
- •Двумерные массивы
- •Операции над элементами двумерного массива
- •Функции
- •Функции
- •Ввод – вывод строк
- •Ввод – вывод строк
- •Структуры
- •Структуры
- •Функции работы с файлами
- •Указатели
- •Операции над указателями
- •Динамическое выделение памяти
Массивы
Массив представляет собой упорядоченную конечную совокупность элементов одного типа, занимающих непрерывную область памяти. Число элементов массива называют его размером. Каждый элемент массива определяется идентификатором массива и своим порядковым номером – индексом. Индекс – целое число, по которому производится доступ к элементу массива.
Массивы могут быть одномерными, двумерными, трехмерными и т.д. Для двумерных, трехмерных и т.д. многомерных массивов индексов будет несколько. В этом случае количество индексов одного элемента массива является его размерностью.
Одномерные массивы
Формат описания массива:
тип_элементов имя [константное_выражение];
Константное выражение задает количество элементов в массиве. Индексы массивов в языке Си начинаются с 0, т.е. в массиве а первый элемент: а[0], второй – а[1], … пятый – а[4].
Например, набор значений температуры воздуха за неделю можно представить как одномерный массив из 7 значений целого типа:
Пример 1:
int A[7];
объявлен массив с именем А, содержащий 7 элементов целого типа.
Размер массива может явно не указываться, если при его объявлении производится инициализация значений элементов.
Пример 2:
int p [ ] = { 2 , 4, 6, 10, 1 };
В этом случае создается массив из пяти элементов со следующими значениями:
р [ 0 ] = 2 , р [ 1 ] = 4 , р [ 2 ] = 6 , р [ 3 ] = 1 0 , р [ 4 ] =1
Если в группе {…} список значений короче, то оставшимся элементам присваивается 0.
Пример 3:
В результате следующего объявления массива
int М[6]={5, 3, 2 };
будет создан массив из шести элементов. Первые три элемента получат инициализированные значения. Значения остальных будут либо неопределенными, либо равны нулю, если массив внешний или статический.
Примеры использования:
Посчитать количество дней недели, в которые температура была ниже 16 градусов.
k=0; for(i=0;i<=6;i++)if(a[i]<16)k++;
printf("количество дней=%d\n",k);
Получить среднее значение температуры воздуха за 7 дней:
sum=0;for(i=0;i<=6;i++)sum+=a[i];
f=sum/7;printf("средняя температура=%f\n",f);
Алгоритмы обработки одномерных массивов в ЯП Си (ввод, вывод в строку, вывод в столбец, поиск элементов).
Массивы
Массив представляет собой упорядоченную конечную совокупность элементов одного типа, занимающих непрерывную область памяти. Число элементов массива называют его размером. Каждый элемент массива определяется идентификатором массива и своим порядковым номером – индексом. Индекс – целое число, по которому производится доступ к элементу массива.
Массивы могут быть одномерными, двумерными, трехмерными и т.д. Для двумерных, трехмерных и т.д. многомерных массивов индексов будет несколько. В этом случае количество индексов одного элемента массива является его размерностью.
Формат описания массива:
тип_элементов имя [константное_выражение];
Константное выражение задает количество элементов в массиве. Индексы массивов в языке Си начинаются с 0, т.е. в массиве а первый элемент: а[0], второй – а[1], … пятый – а[4].
Например, набор значений температуры воздуха за неделю можно представить как одномерный массив из 7 значений целого типа:
Инициализация. Инициализация — это присваивание всем элементам массива одного и того же значения. Выполняется поэлементно.
Пример 4: Присвоение всем элементам одномерного массива из 10-ти элементов значения 0
for(i=0;i<=9;i++)a[i]=0;
Ввод. Ввод элементов массива также осуществляется поэлементно:
for(i=0;i<=9;i++)scanf("%d",&a[i]);
Вывод. Выполняется аналогично:
for(i=0;i<=9;i++)printf("%d ",a[i]); \\вывод в строку
for(i=0;i<=9;i++)printf("%d \n",a[i]); \\вывод в столбец
Примеры поиска элементов:
Поиск количества элементов, меньших 16:
k=0; for(i=0;i<=6;i++)if(a[i]<16)k++;
printf("количество дней=%d\n",k);
Поиск минимального элемента и его номера:
nom=0;min=a[0];
for(i=0;i<=n-1;i++)if(a[i]<min){min=a[i];nom=i;}
printf("минимальное=%d номер=%d\n",min,nom);
Двумерные массивы в ЯП Си (определение, формат объявления, обращение к элементам, пример).
