Практикум по информатике и информационным технологиям. I. Обработка данных на ПК

100 11.1.2. Использование двумерных массивов в качестве параметров функций Если двухмерный массив используется в качестве параметра функции, то в неё передастся только указатель на его первый элемент. При этом обяза­ тельно нужно указать количество столбцов в массиве. Можно также задать и количество строк, но это не обязательно. Количество столбцов необходимо компилятору для того, чтобы правильно вычислить адрес элемента массива внутри функции, а для этого должна быть известна длина строки. Например, функция, получающая в качестве параметра двухмерный массив, состоящий из 10 строк и 10 столбцов, может выглядеть так void funar(int х[][10]) { х[2][4] = 5; } void main(void) { int А[10][10]; funar(A); } " Компилятор С++ должен знать количество столбцов, иначе он не смо­ жет правильно вычислять выражения, подобные следующему: х[2][4] = 5; Если бы длина строки была неизвестна, то компилятор не нашёл бы на­ чало второй строки. Так как в качестве параметра при вызове функции funar передаётся указатель на начало массива А, то все изменения элементов массива jc внутри этой функции напрямую скажутся на значениях элементов массива А. Т.е. после вызова функции funar элемент [2] [4] получит значение 5. 11.1.3. Примеры работы с двумерными массивами Для обработки данных, содержащихся в элементах двухмерного масси­ ва, обычно используются циклы, последовательно перебирающие значения его индексов. Организуем ввод значений элементов массива целых чисел А размер­ ности NxM с помощью клавиатуры. #include <stdio.h> void input(int N, int M, int A[][100]) { inti, j; for(i=0; i<N; i++) for(j=0;j<M;j++) { printf("A(%d,%d) =",ij);

RkJQdWJsaXNoZXIy MTY0OTYy