Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
С_глава1.doc
Скачиваний:
1
Добавлен:
16.12.2018
Размер:
548.86 Кб
Скачать

Примеры работы с одномерными массивами

Пример 1. Ввести и вывести на экран элементы одномерного массива в одной строке.

#include <stdio.h>

int main()

{

float x[5];

int i;

printf(“Введите через пробел 5 элементов массива x\n”);

for (i=0; i<5; i++)

scanf(“%f”,&x[i]);

printf(“Массив x\n”); // Вывод элементов массива

for (i=0; i<5; i++)

printf(“%f ”, x[i]);

printf(“\n”);

return 0;

}

Пример 2. Ввести элементы массива по одному в строке с приглашением к вводу элемента и вывести каждый элемент на отдельной строке.

#include <stdio.h>

int main()

{

float x[5];

int i;

printf(“Введите массив x\n”);

for (i=0; i<5; i++)

{

printf(“x[%d]=”,i);

scanf(“%f”, &x[i]);

}

printf(“Массив x\n”); // Вывод элементов массива

for (i=0; i<5; i++)

printf(“x[%d]=%f \n”,i, x[i]);

printf(“\n”);

return 0;

}

Пример 3. Найти максимальный элемент одномерного массива, состоящего из 8 элементов целого типа, вывести его значение и номер.

#include <stdio.h>

int main()

{ int x[8], xmax, i, imax;

printf(“Введите через пробел 8 элементов целочисленного массива x\n”);

for (i=0; i<8; i++)

scanf(“%d”,&x[i]);

xmax = x[0]; imax=0;

for (i=1; i<8; i++) if (x[i] > xmax)

{ xmax=x[i];

imax = i;

}

printf(“Максимальный элемент массива x: ”);

for (i=0; i<8; i++) // Вывод элементов массива

printf(“%d ”, x[i]);

printf(“\n”);

printf(“x[%d]=%d\n”, imax, xmax);

printf(“Номер элемента в массиве на 1 меньше порядкового номера элемента, так как нумерация элементов массива начинается с 0\n”);

return 0;

}

Пояснения.

Символ ‘\’ в текстовой строке при выводе ее с помощью функции printf() используется при выводе длинных строк как символ продолжения выводимого текста.

Пример 4. Вычислить среднее арифметическое положительных элементов и среднее арифметическое всех отрицательных элементов одномерного массива. Массив сформировать с помощью датчика случайных чисел random().

#include <stdio.h>

#include <stdlib.h>// В stdlib.h содержится описание датчика случайных чисел

// int random(int n) – возвращает целое число между 0 и n-1

int main()

{

const int n=500; // Размерность массива задается именованной константой n

float a[n], sp, sm;

int i, kp, km;

randomize(); // Подготовка к работе датчика случайных чисел:

// randomize() инициализирует датчик случайных чисел

// случайным числом

for (i=0; i<n; i++)

a[i]=random(400)-200; // random(400)-200 –число в диапозоне от –200 до 199

kp=0; km=0;

sp=0.; sm=0.;

for (i=0; i<n; i++)

if (a[i]>=0)

{ sp=sp+a[i];

kp=kp+1;

}

else

{ sm=sm+a[i];

km=km+1;

}

if (kp>0) sp=sp/kp;

else sp=0.;

if (km>0) sm=sm/km;

else sm=0;

printf(“sp=%f sm=%f\n”, sp, sm);

return 0;

}

Пример 5. Bвести с клавиатуры и вывести на экран элементы матрицы (двумерного мас- сива).

#include <stdio.h>

int main()

{const int nx=3,ny=2;

float x[nx][ny]; // Задание размерности массива с

// с помощью именованных констант

int i,j;

printf(“Введите матрицу x\n”);

for (i=0; i<nx; i++)

for (j=0; j<ny; j++)

{ printf(“ x[%d][%d]=”,i,j); // Ввод элементов по одному в строке

scanf(“%f”,&x[i][j]);

}

printf(“Матрица x\n”); // Вывод элементов массива построчно

for (i=0; i<nx; i++)

{ for (j=0; j<ny; j++) // Вывод элементов j строки

printf(“%f ”, x[i][j]);

printf(“\n”);

}

return 0;

}