АЛГОРИТМЫ НА МАТРИЦАХ
МАССИВЫ В ПРОГРАММЕ ОПИСАНИЕ ОБРАЩЕНИЕ К ЭЛЕМЕНТУ МАССИВА тип имя[размер_1]…[размер_N] СИ имя[индекс_1]…[индекс_N] СИ индекс_i - целое выражение, индекс_i = 0,1,…,N-1 В Си элементы массивов нумеруются, начиная с нуля. размеры - только константы
ДВУМЕРНЫЕ МАССИВЫ В СИ-ПРОГРАММЕ Пример. int b[3][5]; b[0][0] b[0][1]... b[0][4] b[1][0] b[1][1]... b[1][4] b[2][0] b[2][1]... b[2][4] В памяти компьютера элементы массива расположены по строкам (чаще меняется последний индекс) Первый индекс - номер строки, второй - столбца
Связь массивов с указателями в Си Двумерные массивы Имя двумерного массива является указателем- константой на начало (элемент с индексом 0) массива указателей-констант, i-й элемент этого массива - указатель -константа на начало (элемент с индексом 0) i-й строки двумерного массива. Пример: int b[5][8];
Двумерные массивы b[i][j] *(b[i]+j) *(*(b+i)+j); &b[i][j] b[i]+j *(b+i)+j Для любого из трех обозначений элемента двумерного массива программа в кодах получается практически одинаковой по производительности, хотя при использовании арифметики указателей вместо квадратных скобок несколько более короткой. Хороший стиль программирования предполагает употребление в пределах одной программы одного (из трех) обозначений. Связь массивов с указателями в Си
Задача. По итоговой экзаменационной ведомости вычислить средний балл каждого студента и число отличников. Предметы СтудентыСтуденты N 30, M 10
Форма ввода Input N,M Input matrix * … Форма вывода i B } N раз K=
начало ввод N,M,{A[i][j]} K=0 i=0 i N-1 вычисление B вывод i,B B=5 K=K+1 i=i+1 вывод K начало в теле цикла имеется цикл получаем цикл кратности 2
Блок 6. Вычисление среднего балла 5 B=0 j=0 j M-1 B=B+A[i][j] j=j+1 B=B/M 7 +
#include void main() { int N,M,K, i,j; float A[30][10],B; coutN>>M; cout >*
Состав данных
#include void main() {int N,M, i,j; float A[10][10],min[10]; coutN>>M; cout
КЛАССИФИКАЦИЯ ЦИКЛОВ ЦИКЛЫ ИТЕРАЦИОННЫЕ ПАРАМЕТРИЧЕСКИЕ ДЕТЕРМИНИРОВАННЫЕ ЦИКЛЫ ДОПОКА ЦИКЛЫ РАЗЛИЧНОЙ КРАТНОСТИ Однократные Двукратные...