Файл: Функции и многофайловые программы в СИ.pdf

ВУЗ: Не указан

Категория: Методичка

Дисциплина: Программирование

Добавлен: 30.10.2018

Просмотров: 543

Скачиваний: 10

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

 

Семинар 2. Функции и многофайловые программы в Си 
Цель семинара:
 Овладение навыками разработки и использования 

функций Си. 

1. 

Задание 

1.  Проработайте (еще раз) примеры  §2.2.4 лекции 2. Попробуйте решить эти 

задачу самостоятельно, не заглядывая в лекцию. Если Ваше решение 
отличается от лекционного, проанализируйте отличия. Как они повлияют на 
работу программы? 

2.  Отладьте программы примеров  §2.2.4 лекции 2.  

3.  Выполните свой вариант задания (с Вашим номером по списку группы) из 

раздела 2. Отчет по выполнению задания делайте по образцу примера 1 
§2.2.4 лекции 2. 

4.  Разбейте свою программу на 2 файла, в первом файле (кроме директив 

препроцессора и шаблонов функций) оставьте функцию main, а во второй 
файл перенесите другие функции. Как добавлять новый файл в проект 
Visual Studio, написано в «Краткой инструкции» семинара 1. Отладьте 
программу из двух файлов.  

Жду отчетов по индивидуальному заданию.  
 

2

.Индивидуальное задание на разработку и использование 

функций Си 

Разработайте программу, выделив в ней одну или несколько под-

программ (функций). Требования к составляемым подпрограммам: 
  каждая  подпрограмма  является  функционально  завершенной  и  должна 

вызываться более одного раза с разными фактическими параметрами; 

  подпрограмма обработки не должна содержать ввод (вывод) данных; 
  в подпрограммах не рекомендуется использовать глобальные переменные. 
 
ВАРИАНТЫ: 

1.  Если  сумма  S

A

  положительных  элементов  главной  диагонали  матрицы 

A (7×7)  больше  единицы,  вывести  значение    S

A

  /S

B

,  где    S

B

  —  сумма 

положительных элементов главной диагонали матрицы (5×5). 

2.  Определить  индексы  минимального  элемента  (в  предположении,  что  он 

единственный) в каждой из трех матриц (7×5), (3×7), (4×5). 


background image

 

3.  Даны матрицы (5×5), (7×7), (4×4). Вычислить значение выражения P

A 

+  P

B

  –    P

C

,  где  P

A

  (P

B

,  P

C

)  —    произведение  положительных  элементов 

главной диагонали матрицы A (BC). 

4.  В каждой из двух матриц (7×7), (5×5) определить минимальное значение 

среди положительных элементов главной диагонали. 

5.  Если  среднее  арифметическое  S

A

  положительных  элементов  матрицы 

(5×4)  больше  среднего  арифметического  S

B

  положительных  элементов 

матрицы (4×6), найти сумму S

A

 + S

B

, иначе найти разность S

A

 –  S

B

6.  В  матрицах  A  (7×7)  и  B  (5×5)  заменить  каждый  положительный  элемент, 

стоящий выше главной диагонали, на нуль. 

7.  Даны матрицы A (4×4), B (5×5), C (3×3). Вычислить значение выражения (P

A

 

P

B

)P

C

, где P

A

 (P

B

P

C

) — произведение положительных элементов матрицы 

A (BC), стоящих выше главной диагонали. 

8.  Для каждой строки матрицы  A (5×8) определить число элементов, больших 

D,  а  для  каждой  строки  матрицы  B (7×5)  определить  число  элементов, 
больших QD— заданные значения. 

9.  Проверить,  есть  ли  среди  элементов  главной  диагонали  матрицы  A (5×5) 

отрицательные  элементы,  а  среди  элементов  главной  диагонали  матрицы 
B (3×3) — элементы, меньшие 2,7. 

10.   В  каждой  из  матриц  A (4×3),  B (5×4)  поменять  местами  две  строки:  в  A 

вторую и третью строки , в B — первую и третью. 

11.   Для  каждой  строки  матрицы  A (6×5)  найти  среднее  арифметическое 

положительных элементов, а для каждой строки матрицы B (4×7) — среднее 
арифметическое элементов больших единицы. 

12.   Даны  матрицы  A (5×4),  B (5×5),  C (3×7).  Найти  значение  выражения  P

A 

2P

B

  –  P

C

,  где    P

A 

  (P

B

,  P

C

)  —  произведение  положительных  элементов 

матрицы A (BC), не лежащих на главной диагонали. 

13.   Определить  максимальные  значения  для  каждого  столбца  каждой  из  трех 

матриц A (4×5), B (5×7), C (3×4).  

14.   Заменить  в  третьем  столбце  матрицы  A (5×7)  все  нули  на  единицы,  а  в 

пятом столбце матрицы  B (4×5) — все единицы на нули. 

15.   Проверить,  есть  ли  в  матрице  A (6×5)  элементы,  большие  10,  а  в  матрице 

B (5×7) — элементы, большие 5. 

16.   Даны целочисленные матрицы A (4×5) и B (5×7). В первой строке матрицы 

A  найти  число  нулевых  элементов,  а  в  третьей  строке  матрицы  B  —  число 
элементов, равных 5. 

17.   Для  матрицы  A (7×3)  вычислить  общую  сумму  элементов  строк,  первый 

элемент  которых  положителен,  а  для  матрицы  B (6×4)  —  общую  сумму 
элементов строк, в которых первый элемент больше единицы. 

18.   Проверить,  все  ли  элементы  главной  диагонали  матрицы  A (5×5) 

положительны  и  все  ли  элементы  главной  диагонали  матрицы  B (4×4) 
больше единицы. 


background image

 

19.   Для  каждой  из  матриц  A (4×5)  и  B (5×3)  определить  количество  строк, 

сумма элементов которых положительна. 

20.   Даны  матрицы  (4×4),  (5×5),  (3×3).  Вычислить  значение  выражения 

A

min

 B

min

 – C

min

,  где  A

min

  (B

min

,  C

min

)  —  минимальный  элемент  главной 

диагонали матрицы (BC).  

21.   Даны  целочисленные  матрицы  A (4×5)  и  B (3×7).  Проверить,  есть  ли  в 

матрице A элементы, равные D, а в матрице B — элементы, равные Q, где D
Q — заданные значения.  

22.   Для  каждой  строки  матрицы  A (4×5)  вычислить  сумму  и  количество 

отрицательных элементов, а для каждой строки матрицы B (3×7) — сумму и 
количество элементов, значения которых меньше 5. 

23.  Даны  целочисленные  матрицы  A (4×5)  и  B (3×7).    Для  матрицы  A  найти 

число  элементов,  стоящих  ниже  главной  диагонали  и  равных  D,  а  для 
матрицы  B –  число  элементов,  стоящих ниже  главной  диагонали и равных 
Q, где D и Q — заданные значения. 

24.   Проверить, есть ли в матрице A (5×4) строки с отрицательной суммой и есть 

ли в матрице B (4×5) строки, сумма элементов которых меньше 5. 

25.   Для  матрицы  A (3×7)  найти  число  строк,  произведение  элементов  которых 

больше  единицы,  а  для  матрицы  B (4×5)  —  число  строк,  произведение 
элементов которых больше заданного значения Q

26.   Для  каждой  из  матриц  A (4×5),  B (3×7)  найти  число  столбцов,  сумма 

элементов которых меньше их произведения. 

27.   Даны  матрицы  A (5×4),  B (5×5),  C (3×7).  Вычислить  значение  выражения 

A

max

 + B

max

 – C

max

,  где  A

max

  (B

max

,  C

max

)  —  максимальный  из  элементов, 

лежащих ниже главной диагонали матрицы A (B, C). 

28.   Для  каждой  из  матриц  B (5×4),  C (4×6)  проверить,  во  всех  ли  столбцах 

сумма элементов положительна. 

29.  Проверить,  упорядочены  ли  по  возрастанию  элементы  третьего  столбца 

матрицы A (4×6) и элементы пятого столбца матрицы B (5×5).