Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Программирование на языке Си. Практикум

.pdf
Скачиваний:
0
Добавлен:
12.08.2026
Размер:
893 Кб
Скачать

Задание: Написать программу создания двух массивов, в которой:

Вариант задания

1

- объявить 2 массива H и G (из 15 вещественных чисел);

 

- значения элементов массива H вычислить по формуле

 

H[i] = sin(x/2),

 

где x – точки, равномерно расположенные на отрезке [0;

 

7];

 

- записать в массив G все отрицательные элементы из H;

 

- распечатать оба массива в столбик (с 2 знаками после

 

запятой);

 

- вычислить и вывести на экран сумму квадратов всех

 

элементов массива H.

2

- объявить 2 массива K и L (из 12 вещественных чисел);

 

- значения элементов массива K вычислить по формуле

 

K[i] = i / 2 + 10.5

 

- записать в массив L все элементы массива K со

 

значениями в диапазоне [12;15];

 

- распечатать оба массива в строчку (с 2 знаками после

 

запятой);

 

- вычислить и вывести на экран произведение всех

 

элементов массива L.

2

- объявить 2 массива L и Z (из 11 вещественных чисел);

 

- значения элементов массива L задать при объявлении;

 

- записать в массив Z все элементы массива L со

 

значениями в диапазоне [0; 1.5];

 

- распечатать оба массива в строчку (с 1 знаком после

 

запятой);

 

- подсчитать и вывести на экран произведение последних

 

пяти элементов массива L.

4

- объявить 2 массива M и N (каждый из 7 целых чисел);

 

- значения элементов массива M ввести с клавиатуры;

 

- записать в массив N все четные элементы из массива M;

 

- распечатать оба массива в столбик;

 

- определить и вывести на экран максимальный элемент

 

массива M и его номер.

 

 

11

5- объявить 2 массива N и P (каждый из 5 целых чисел);

-значения элементов массива N ввести с клавиатуры;

-записать в массив P все нечетные элементы из массива N;

-распечатать оба массива в столбик;

-определить и вывести на экран минимальный элемент массива N и его номер.

6- объявить 2 массива P и Q (каждый из 8 целых чисел);

-значения элементов массива P задать при объявлении;

-записать в массив Q все положительные элементы из P;

-распечатать оба массива в строчку;

-вычислить и вывести на экран разность всех элементов массива P с четными индексами.

7- объявить 2 массива M и R (каждый из 10 целых чисел);

-значения элементов массива M задать при объявлении;

-записать в массив R все элементы массива M, кратные 5;

-распечатать оба массива в строчку;

-вычислить и вывести на экран количество элементов массива M со значениями меньше 50, и их сумму.

8- объявить 2 массива R и S (из 6 вещественных чисел);

-значения элементов массива R вычислить по формуле

R[i] = 1 / sin(i+1) + 0.75;

-записать в массив S все элементы массива R с нечетными индексами;

-распечатать оба массива в строчку (с 2 знаками после запятой) в обратном порядке;

-определить и вывести на экран минимальный элемент R.

9- объявить 2 массива T и S (из 5 вещественных чисел);

-значения элементов массива T ввести с клавиатуры;

-записать в массив S все положительные элементы массива

T;

-распечатать оба массива в строчку (с 2 знаками после запятой) в обратном порядке;

-определить и вывести на экран максимальный по модулю элемент массива T и его номер.

10- объявить 2 массива W и X (из 15 вещественных чисел); - значения элементов массива W вычислить по формуле

W[i] = 1 /(i+2)3 + 5.75;

12

-записать в массив X все элементы массива W с нечетными индексами;

-распечатать оба массива в столбик (с 3 знаками после запятой);

-вычислить и вывести на экран сумму и произведение всех элементов массива X.

11- объявить 2 массива Q и R (каждый из 5 вещественных чисел);

-значения элементов массива Q ввести с клавиатуры;

-записать в массив R все элементы Q в диапазоне (-2; 3);

-распечатать оба массива в строчку (с 1 знаком после запятой);

-вычислить и вывести на экран квадратный корень из суммы модулей элементов массива Q.

12- объявить 2 массива V и Y (каждый из 14 вещественных чисел);

-значения элементов массива V вычислить по формуле

V[i] = x3 / 1.5 ,

где x – точки, равномерно расположенные на отрезке [-5; 21];

-записать в массив Y все элементы V с четными индексами;

-распечатать оба массива в строчку (с 2 знаками после запятой);

-вычислить и вывести на экран сумму квадратов всех элементов массива Y.

13- объявить 2 массива U и R (каждый из 6 вещественных чисел);

-значения элементов массива U ввести с клавиатуры;

-записать в массив R все элементы массива U, квадрат которых меньше 30;

-распечатать оба массива в строчку (с 2 знаками после запятой);

-вычислить и вывести на экран сумму и количество отрицательных элементов массива U.

14- объявить 2 массива Z и F (каждый из 9 целых чисел);

-значения элементов массива Z задать при объявлении;

13

-записать в массив F все элементы из массива Z, которые кратны 10;

-распечатать оба массива в строчку;

-определить и вывести на экран максимальный элемент массива Z и его номер.

15- объявить 2 массива X и Y (каждый из 10 целых чисел);

-значения элементов массива X задать при объявлении;

-записать в массив Y все нечетные элементы из массива X;

-распечатать оба массива в столбик;

-вычислить и вывести на экран разность элементов X c нечетными индексами.

16- объявить 2 массива T и L (каждый из 11 целых чисел);

-значения элементов массива T задать при объявлении;

-записать в массив L все элементы из массива T, которые кратны 3;

-распечатать оба массива в столбик;

-вычислить и вывести на экран произведение нечетных элементов массива T.

17- объявить 2 массива D и M (каждый из 12 целых чисел);

-значения элементов массива D задать при объявлении;

-записать в массив M все отрицательные элементы из массива D, удвоив их;

-распечатать оба массива в строчку;

-вычислить и вывести на экран сумму первой половины элементов массива D.

18- объявить 2 массива C и S (из 7 вещественных чисел);

-значения элементов массива C ввести с клавиатуры;

-записать в массив S все элементы массива С со значениями меньше 21;

-распечатать оба массива в столбик (с 3 знаками после запятой);

-вычислить и вывести на экран произведение отрицательных элементов массива C.

19- объявить 2 массива F и A (каждый из 10 вещественных чисел);

-значения элементов массива F задать при объявлении;

14

-записать в массив A все элементы массива F со значениями в диапазоне [10;20];

-распечатать оба массива в столбик в обратном порядке (с 2 знаками после запятой);

-вычислить и вывести на экран сумму модулей элементов массива F.

20- объявить 2 массива R и Y (каждый из 8 вещественных чисел);

-значения элементов массива R задать при объявлении;

-записать в массив Y элементы массива R с четными индексами;

-распечатать оба массива в строчку;

-вычислить и вывести на экран сумму максимального и минимального элементов массива R.

21- объявить 2 массива B и Z (каждый из 8 вещественных чисел);

-значения элементов массива B вычислить по формуле

B[i] = (i+1)2 / 2 - 10;

-записать в массив Z все элементы массива B с нечетными индексами;

-распечатать оба массива в строчку (с 1 знаком после запятой);

-вычислить и вывести на экран сумму квадратов отрицательных элементов массива B.

22- объявить 2 массива Y и K (каждый из 13 вещественных чисел);

-значения элементов массива K вычислить по формуле

K[i] = (i+1)3 / 2 + 1;

-записать в массив Y все элементы K с индексами, кратными 3;

-распечатать оба массива в строчку (с 1 знаком после запятой);

-вычислить и вывести на экран сумму квадратов элементов

Y.

23- объявить 2 массива F и G (каждый из 11 вещественных чисел);

-значения элементов массива F задать при объявлении;

15

-записать в массив G все элементы F со значениями от 0 до 5;

-распечатать оба массива в строчку (с 1 знаком после запятой);

-вычислить и вывести на экран корень из суммы квадратов элементов массива G.

24- объявить 2 массива М1 и M2 (каждый из 15 целых чисел);

-значения элементов массива M1 задать при объявлении;

-записать в массив M2 все элементы массива M1, кратные

4;

-распечатать оба массива в строчку;

-вычислить и вывести на экран сумму и произведение всех элементов массива M2.

25- объявить 2 массива B и W (из 7 вещественных чисел);

-значения элементов массива B ввести с клавиатуры;

-записать в массив W все элементы B с нечётными индексами;

-распечатать оба массива в строчку (с 1 знаком после запятой);

-вычислить и вывести на экран максимальный элемент W.

26- объявить 2 массива H и L (из 13 вещественных чисел);

-значения элементов массива H вычислить по формуле

H[i] = cos(3x),

где x – точки, равномерно расположенные на отрезке [-3; 3];

-записать в массив L все положительные элементы H;

-распечатать оба массива в строчку (с 2 знаками после запятой);

-вычислить и вывести на экран сумму первых 5 элементов массива Н.

27- объявить 2 массива T1 и T2 (каждый из 17 целых чисел);

-значения элементов массива T1 задать при объявлении;

-записать в массив T2 все элементы массива T1, кратные 6;

-распечатать оба массива в строчку;

-вычислить и вывести на экран сумму последних 7 элементов массива T1.

16

1.2. Двумерные массивы

Элементы двумерных массивов расположены в виде прямоугольной таблицы. Все строки имеют одинаковую длину.

Формат объявления двумерного массива:

тип_данных имя_массива [число_ строк][число_столбцов];

Например, объявление и инициализация двумерного массива mb из 3 строк и 5 столбцов:

float mb[3][5] = {{ 2.1,

-8.3,

0,

2, 6.25},

{ -6.2, 1.0e-3,

25,

82,

0.6},

{

8.7,

9.12, 7.34, -2.2,

0.9}};

Неинициализированные

массивы

содержат "мусор",

оставшийся в этой части памяти. Если указать больше значений, чем описанный размер, то возникает ошибка.

Обращаясь к элементу массива, указывают имя массива и в скобках индексы данного элемента - номер строки и номер столбца. Например, mb[i][j] - элемент массива mb на пересечении i-ой строки и j-ого столбца. Индексы элементов

массива начинаются с нуля.

 

 

 

 

0

1

j

m-1

mbn x m

0

mb[0][0]

mb[0][1]

 

mb[0][j]

 

mb[0][m-1]

1

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

i

mb[i][0]

mb[i][1]

 

mb[i][j]

 

mb[i][m-1]

 

 

 

 

 

 

n-1

mb[n-1][0]

mb[n-1][1]

 

mb[n-1][j]

 

mb[n-1][m-1]

Двумерный массив располагается в памяти строка за строкой без разрыва. Например, массив

mb[3][5]

располагается в памяти следующим образом

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 строка

 

2 строка

 

 

3 строка

17

Лабораторная работа №3 Заполнение регулярного массива. Индексированные переменные

Задание: Составить программу заполнения массива целого типа в соответствии со схемой и печати его в виде таблицы (матрицы), используя индексированные переменные. Для заполнения и печати массива применить циклы по номерам строк и столбцов.

 

Вариант задания

 

 

Вариант задания

1

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

0

0

0

0

0

0

2

2

2

0

0

0

 

 

 

 

 

 

 

 

 

3

3

3

3

3

3

 

 

 

2

2

2

0

0

3

 

 

 

0

0

0

0

0

0

 

 

 

2

2

2

0

0

0

 

 

 

3

3

3

3

3

3

 

 

 

0

0

0

4

4

4

 

 

 

0

7

0

0

0

0

 

 

 

0

0

0

4

4

4

 

 

 

3

3

3

3

3

3

 

 

 

0

0

0

4

4

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

1

2

3

4

5

6

 

9

9

9

0

0

0

 

 

 

 

 

 

 

 

 

2

1

2

3

4

5

 

 

 

8

9

9

9

0

0

 

 

 

3

2

1

2

3

4

 

 

 

8

8

9

9

9

0

 

 

 

4

3

2

1

2

3

 

 

 

0

8

8

9

9

9

 

 

 

5

4

3

2

1

2

 

 

 

0

0

8

8

9

9

 

 

 

6

5

4

3

2

1

 

 

 

0

0

0

8

8

9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

6

 

 

 

 

 

 

 

 

3

9

9

9

9

9

 

2

2

2

2

2

4

 

 

 

 

 

 

 

 

 

0

4

9

9

9

9

 

 

 

2

2

2

2

4

4

 

 

 

0

0

5

9

9

9

 

 

 

2

2

2

4

4

4

 

 

 

0

0

0

6

9

9

 

 

 

2

2

4

4

4

4

 

 

 

0

2

0

0

7

9

 

 

 

2

4

4

4

4

4

 

 

 

0

0

0

0

0

8

 

 

 

4

4

4

4

4

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

 

 

 

 

 

 

 

8

 

 

 

 

 

 

 

 

 

8

8

8

0

0

0

 

 

7

0

0

0

0

0

 

 

 

 

 

 

 

 

 

0

8

8

0

0

0

 

 

 

7

7

0

0

0

0

 

 

 

0

0

8

0

0

0

 

 

 

7

7

7

0

0

0

 

 

 

0

0

0

5

5

5

 

 

 

7

7

7

7

0

0

 

 

 

0

0

0

0

5

5

 

 

 

7

7

7

7

7

0

 

 

 

0

0

4

0

0

5

 

 

 

7

7

7

7

7

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

18

9

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

0

0

0

0

0

2

-4

0

0

0

 

0

 

 

 

 

 

 

 

 

 

 

5

5

0

0

0

0

 

 

 

1

2

-4

0

0

 

0

 

 

 

5

5

5

0

8

0

 

 

 

0

1

2

-4

0

 

0

 

 

 

0

0

0

4

0

0

 

 

 

0

0

1

2

-4

 

0

 

 

 

0

0

0

4

4

0

 

 

 

0

0

0

1

2

 

-4

 

 

 

0

0

0

4

4

4

 

 

 

0

 

0

0

0

1

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11

 

 

 

 

 

 

 

 

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

0

5

0

5

0

 

1

 

1

 

1

 

1

1

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

2

5

0

5

0

 

 

 

 

0

 

1

 

1

 

1

3

3

 

 

 

 

5

0

5

0

5

0

 

 

 

 

0

 

0

 

1

 

3

3

3

 

 

 

 

5

0

5

0

5

0

 

 

 

 

0

 

0

 

2

 

3

3

3

 

 

 

 

5

0

5

0

5

0

 

 

 

 

0

 

2

 

2

 

2

3

3

 

 

 

 

5

0

5

0

5

0

 

 

 

 

2

 

2

 

2

 

2

2

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

13

 

 

 

 

 

 

 

 

14

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

0

0

0

1

 

 

 

0

 

0

 

0

 

2

2

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

0

0

1

1

 

 

 

 

0

 

0

 

0

 

2

2

0

 

 

 

 

0

0

0

1

1

1

 

 

 

 

0

 

0

 

0

 

2

0

0

 

 

 

 

0

0

2

0

0

0

 

 

 

 

7

 

7

 

7

 

0

0

0

 

 

 

 

0

2

2

0

3

0

 

 

 

 

7

 

7

 

0

 

0

9

0

 

 

 

 

2

2

2

0

0

0

 

 

 

 

7

 

0

 

0

 

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

15

 

 

 

 

 

 

 

 

16

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

2

0

0

2

2

 

 

 

2

 

2

 

2

 

2

2

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

2

0

0

2

2

 

 

 

 

2

 

2

 

2

 

2

2

0

 

 

 

 

0

0

0

0

0

0

 

 

 

 

2

 

2

 

2

 

2

0

0

 

 

 

 

0

0

0

0

0

0

 

 

 

 

2

 

2

 

2

 

0

0

0

 

 

 

 

2

2

0

0

2

2

 

 

 

 

2

 

2

 

0

 

0

0

0

 

 

 

 

2

2

0

0

2

2

 

 

 

 

2

 

0

 

0

 

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

17

 

 

 

 

 

 

 

 

18

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

0

0

0

0

1

 

 

 

0

 

0

 

0

 

5

5

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

0

0

1

1

 

 

 

 

0

 

0

 

0

 

5

5

5

 

 

 

 

1

1

1

1

1

1

 

 

 

 

0

 

0

 

0

 

5

5

5

 

 

 

 

1

1

1

1

1

1

 

 

 

 

4

 

4

 

4

 

0

0

0

 

 

 

 

1

1

0

0

1

1

 

 

 

 

4

 

4

 

4

 

0

0

0

 

 

 

 

1

0

0

0

0

1

 

 

 

 

4

 

4

 

4

 

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

19

19

 

 

 

 

 

 

 

 

20

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6

5

4

3

2

1

 

1

 

0

 

0

0

0

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

4

3

2

1

0

 

 

 

0

 

2

 

0

0

0

 

2

 

 

 

 

4

3

2

1

0

0

 

 

 

0

 

0

 

3

0

0

 

3

 

 

 

 

3

2

1

0

0

0

 

 

 

0

 

0

 

0

4

0

 

4

 

 

 

 

2

1

0

0

0

0

 

 

 

0

 

0

 

0

0

5

 

5

 

 

 

 

1

0

0

0

0

0

 

 

 

1

 

2

 

3

4

5

 

6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

21

 

 

 

 

 

 

 

 

22

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

2

3

4

5

6

 

0

 

4

 

0

4

0

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

2

0

0

0

0

 

 

 

0

 

4

 

0

4

0

 

4

 

 

 

 

3

0

3

0

0

0

 

 

 

0

 

0

 

0

4

0

 

4

 

 

 

 

4

0

0

4

0

0

 

 

 

0

 

0

 

0

4

0

 

4

 

 

 

 

5

0

0

0

5

0

 

 

 

0

 

0

 

0

0

0

 

4

 

 

 

 

6

0

0

0

0

6

 

 

 

0

 

0

 

0

0

0

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

23

 

 

 

 

 

 

 

 

24*

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

0

0

0

0

 

1

 

 

2

 

3

 

4

 

 

5

 

6

 

 

5

0

0

0

0

0

 

 

20

 

21

 

22

 

23

 

 

24

 

7

 

 

5

5

0

0

0

0

 

 

19

 

32

 

33

 

34

 

 

25

 

8

 

 

5

5

5

0

0

0

 

 

18

 

31

 

36

 

35

 

 

25

 

9

 

 

5

5

5

5

0

0

 

 

17

 

30

 

29

 

28

 

 

27

 

10

 

 

5

5

5

5

5

0

 

 

16

 

15

 

14

 

13

 

 

12

 

11

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.3. Матричные операции и их программирование

Над матрицами можно выполнить следующие операции:

-сравнение на равенство,

-сложение (вычитание),

-умножение на число,

-перемножение,

-транспонирование,

-нахождение обратной матрицы.

1.Сравнение на равенство

Если матрицы имеют одинаковый размер, и соответствующие элементы равны, то такие матрицы равны. Понятия больше/меньше не определены.

20

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]