int mass2 [][2] = { {1. 1}. {0. 2}. {1. 0} }:
int mass2 [3][2] = {1. 1. 0. 2. 1. 0}:
Пример. Программа определяет в целочисленной матрице номер строки, которая содержит наибольшее количество элементов, равных нулю.
Номер искомой строки хранится в переменной istr, количество нулевых элемен тов в текущей (i -й) строке — в переменной Kol, максимальное количество ну левых элементов — в переменной MaxKol. Массив просматривается по строкам,
каждой из них подсчитывается количество нулевых элементов (обратите вни мание, что переменная Kol обнуляется перед просмотром каждой строки). Наи большее количество и номер соответствующей строки запоминаются.
Для создания динамического многомерного массива необходимо указать в опера ции new все его размерности (самая левая размерность может быть переменной), например:
int nstr = 5:
int ** m = (int **) new int [nstr][10]:
Более универсальный и безопасный способ выделения памяти под двумерный массив, когда обе его размерности задаются на этапе выполнения программы, приведен ниже:
операторе 1 объявляется переменная типа «указатель на указатель на int» и вы деляется память под массив указателей на строки массива (количество строк — nstr). В операторе 2 организуется цикл для выделения памяти под каждую строку массива. В операторе 3 каждому элементу массива указателей на строки присваивается адрес начала участка памяти, выделенного под строку двумерного массива. Каждая строка состоит из nstb элементов типа int
Достарыңызбен бөлісу: |