- •Лабораторная работа № 7 Программирование с использованием функций
- •Теоретические сведения
- •Стандартные функции
- •Определение функции
- •Программируемые функции
- •Параметры функций
- •Возвращение значений с помощью оператора return
- •Параметры функций
- •Пример 6.
- •Передача массивов в качестве аргументов функции
- •Понятие об указателях
- •Пример 9 [2]. Использование указателей для нахождения среднего значения массива n целых чисел.
- •Понятие ссылки
- •Контрольные вопросы
- •Лабораторное задание
- •Порядок выполнения лабораторной работы
- •Требования к отчету
- •Варианты заданий
Контрольные вопросы
1. Каков допустимый уровень вложенности функции в языке С?
2. Как определить функцию? Что такое прототип функции? Всегда ли обязательно объявление прототипов?
3. Как передать информацию функции?
4. В чем разница между формальными и фактическими аргументами? Где описываются аргументы?
5. Где описываются локальные переменные функции?
6. Для чего служит оператор return? Обязательно ли его использование?
7. Проверьте, все ли правильно в следующем определении функции:
hallo (num)
{ int num, count;
for (count =1; count <= num; num++)
printf ("Hallo, my friend! \n");
}
Лабораторное задание
Составить программу с использованием функций для своего варианта задания.
Порядок выполнения лабораторной работы
При домашней подготовке ознакомиться с примерами программирования, рассмотренными в разделе "Теоретические сведения" лабораторной работы.
Нарисовать блочную структуру программы для своего варианта и составить таблицу доступности глобальных имен в функциях, описанных в этой программе.
Составить файл с текстом программы для своего варианта задания.
Отладить программу с помощью средств отладки ИСРП "Borland C++" и выполнить ее на компьютере. Результаты показать преподавателю.
Оформить отчет и защитить работу.
Требования к отчету
Отчет должен содержать:
конспект теоретической части;
лабораторное задание;
порядок выполнения лабораторной работы;
результаты выполнения программ.
Варианты заданий
Номер варианта |
Задание |
1 |
Задать значения вещественным элементам массивов А = {ai| i = 0,1,...,7}, B = {bj½j = 0,1,...,5}, C = {ck½ k = 0,1,...,9}, D = {dn½n = 0,1,...,9} и вычислить
|
2 |
Задать значения целочисленным элементам массивов А = {aj| i = 0, 1,..., 8}, B = {bj½j = 0, 1,...,5}, C = {ck½ k = 0,1,...,6} и вычислить
|
3 |
Задать значения целочисленным элементам массивов М = {mi½i = 0, 1,...,7}, L = {lj½j = 0, 1,...,6}, C = {ck½ k = 0, 1,...,8} и вычислить
|
4 |
Задать значения вещественным элементам массивов А = {ai½i = 0,1,..., 6}, B = {bj½j = 0, 1, 2, 3}, C = {ck½ k = 0, 1, 2,..., 10} и вычислить
|
Продолжение
Номер варианта |
Задание |
5 |
Задать значения целочисленным элементам матриц А = {aij}, B = {bjj}, где i = 0, 1, 2, 3; j = 0, 1, 2,...,6и сформировать массивы С и D, состоящие из максимальных элементов столбцов матриц А и В соответственно. |
6 |
Задать значения вещественным элементам массивов A = {ai} и B = {bi}, где i = 0, 1, 2,...,9и вычислить элементы массивов X = {xi} и Y = {yi} по формулам:
|
7 |
Задать значения целочисленным элементам матриц M = {mij} и N = {nij}, где i = 0, 1, 2,..., 7; j = 0, 1, 2,..., 5и сформировать массивы С и D, состоящие из максимальных элементов строк матриц M и N соответственно. |
8 |
Задать значения вещественным элементам матриц А = {аij} и Q = {qij}, где i = 0, 1, 2,...,6; j = 0, 1, 2,...,4и сформировать массивы B и R, состоящие из минимальных элементов столбцов матриц A и Q соответственно. |
9 |
Задать значения целочисленным элементам матриц P = {pij} и Q = {qij}, где i = 0, 1, 2,...,4; j = 0, 1, 2,...,7и сформировать массивы R и T из сумм отрицательных элементов строк матриц P и Q соответственно. |
10 |
Задать значения вещественным элементам матриц С = {сij} и D = {dij}, где i = 0, 1, 2,...,5; j = 0, 1, 2,...,5и сформировать массивы X и Y из произведений положительных элементов столбцов матриц C и D соответственно. |
11 |
Задать значения целочисленным элементам матриц W = {wij} и Z = {zij}, где i = 0, 1, 2; j = 0, 1, 2,...,7и сформировать массивы T и S соответственно из элементов матриц W и Z, больших заданного числа Р. |
Продолжение
Номер варианта |
Задание |
12 |
Задать значения вещественным элементам матриц B = {bij} и D = {dij}, где i = 0, 1, 2,...,7; j = 0, 1, 2, 3, и сформировать массивы Y и Z,состоящие соответственно из элементов матриц B и D, меньших заданного числа R.
|
13 |
Задать значения вещественным элементам матриц Р = {рij}, Q = {qij}, где i = 0, 1, 2,..., 5; j = 0, 1, 2,..., 8 и сформировать массивы R и T, состоящие из минимальных элементов столбцов матриц P и Q соответственно.
|
14 |
Задать значения целочисленным элементам массивов С = {сi} и D = {di}, где i = 0, 1, 2,..., 6 и вычислить элементы массивов S = {si} и T = {ti}, где i = 0, 1, 2,..., 6, по формуле:
|
15 |
Задать значения вещественным элементам массивов A = {ai}, B = {bi}, C = {ci}, где i = 0, 1, 2,...,6 и вычислить
|
16 |
Задать значения целочисленным элементам матриц A = {aij}, B = {bij}, где i = 0, 1; j = 0, 1, 2 и вычислить элементы матриц Y = {yij}, Z = {zij} по формулам
|
Окончание
Номер варианта |
Задание |
17 |
Задать значения целочисленным элементам матриц A = {aij}, B = {bij},где i = 0, 1, 2,..., 5; j = 0, 1, 2, 3 и вычислить элементы массивов X = {xij}, Y = {yij} по формулам:
|
18 |
Задать значения вещественным элементам массивов X = {xi| i = 0, 1, 2,..., 5}, Y = {yj| j = 0, 1, 2,..., 7}, Z = {zk| k = 0, 1, 2,..., 9}, и вычислить если |
19 |
Задать значения вещественным элементам четырех квадратных матриц 5-го порядка и вычислить квадрат той из матриц, у которой наибольшая сумма диагональных элементов. |
20 |
Задать значения целочисленным элементам матриц А = {аij}, B = {bij}, где i = 0, 1, 2, 3, 4j = 0, 1, 2, 3и вычислить величины S=x0/x4+ x1/x3+ ... +x4/x0, T= y0/y4+ y1/y3+ ... + y4/y0, где xi, yi- максимальные элементы i-х строк матриц А и В соответственно. |
21 |
Задать целочисленные значения элементам квадратных матриц A = {aij}, B = {bij}, C = {cij} и векторам (матрицам-столбцам) X = {xi}, Y = {yi}, Z = {zi}, где i = 0, 1, 2,..., 4, j = 0, 1, 2,..., 4 и вычислить вектор W = AX+BY – CZ. |