- •Основы программирования на языке Си Методические указания к выполнению практических работ
- •Предисловие
- •Практическая работа № 1. Структура программы, основные типы данных, ввод/вывод
- •Практическая работа № 2. Ветвления и циклы
- •If (выражение) оператор_1; else оператор_2;
- •If (выражение) оператор;
- •Практическая работа № 3. Указатели
- •Практическая работа № 4. Массивы. Динамическое выделение памяти
- •Практическая работа № 5. Функции
- •Практическая работа №6. Строки
- •Основные функции обработки строк
- •Практическая работа №7. Файлы
- •Основные функции для работы с файлами
- •Постановка задачи
- •Варианты заданий
- •Библиографический список
- •Основы программирования на языке Си
- •190005, С.-Петербург, 1-я Красноармейская ул., д.1
Практическая работа № 4. Массивы. Динамическое выделение памяти
Цель работы – познакомиться с организацией массивов в языке Си, изучить принципы работы с массивами, освоить работу с массивами через указатели, научиться грамотно выделять и освобождать память в процессе работы программы.
Функции для работы с динамической памятью
Выделение памяти
void * malloc (size_t size);
возвращает указатель на место в памяти для объекта размера size или, если памяти запрашиваемого объема нет, NULL. Выделенная область памяти не инициализируется.
void * calloc (size_t nobj, size_t size);
возвращает указатель на место в памяти, отведенное для массива nobj объектов, каждый из которых размера size, или, если памяти запрашиваемого объема нет, NULL. Выделенная область памяти обнуляется.
void * realloc (void *p, size_t size);
заменяет на size размер объекта, на который указывает p. Для части, размер которой равен наименьшему из старого и нового размеров, содержимое не изменяется. Если новый размер больше старого, дополнительное пространство не инициализируется. Функция realloc возвращает указатель на новое место памяти или, если требования не могут быть удовлетворены, NULL (*p при этом не изменяется).
Освобождение памяти
void free (void *р);
Постановка задачи
Написать шесть программ согласно индивидуальному варианту. Использовать обращение к элементам массива с помощью операции индексации и через указатель. Ввод элементов массива осуществлять с клавиатуры, контролировать корректность ввода. Во время отладки и тестирования программы размер массива можно уменьшить. При выводе матриц следить за тем, чтобы ширина всех столбцов матрицы была одинаковой.
Во второй задаче память под массив выделять динамически.
Одну из задач с матрицей (третью или четвертую) решить двумя способами:
матрицу записать в виде статического двумерного массива;
организовать динамическую матрицу, используя динамическое выделение памяти.
Варианты заданий
Определить, представляют ли собой элементы массива А (20) возрастающую последовательность.
Сформировать новый массив из элементов исходного линейного массива, встречающихся в нем только один раз.
Вычислить
,
где ki
и kj
– индексы
строки и столбца минимального
положительного элемента матрицы
Y (5х7), а mi
и mj–
индексы строки
и столбца первого положительного
элемента.Определить, является ли данная квадратная матрица симметричной относительно своей побочной диагонали.
Книга – трехмерный массив букв (3 координаты – страница, строка, номер буквы в строке). Вывести на экран n-ю строку со страницы p книги, содержащей 450 страниц, на каждой странице которой размещается по 80 строк, длина каждой строки – 64 символа.
Записать элементы массива С (20) в обратном порядке {С20;С19;С18;…;С2;С1}. Вспомогательный массив не использовать.
Определить количество элементов линейного массива, больших среднего арифметического значения элементов этого массива.
Заполнить матрицу А (8х8) следующим образом: на главной диагонали – «0», над диагональю – «1», под диагональю – «-1».
Поменять местами минимальный элемент целочисленной матрицы Р (9х11) и элемент, значение которого совпадает с заданным X. Если указанный элемент в матрице отсутствует, вывести сообщение об этом. Матрица, в которой минимальное значение встречается неоднократно, является некорректной.
Куб состоит из n3 прозрачных и непрозрачных элементарных кубиков. Построить полностью непрозрачный куб, используя ровно n2 непрозрачных элементарных кубиков.
В массиве А (45) найти локальные максимумы, определить их местоположение. Локальным максимумом назовем элемент массива, значение которого больше, чем значения двух соседних с ним элементов. Крайние элементы массива являются локальными максимумами, если они больше единственного соседнего элемента.
Удалить из целочисленного одномерного массива все элементы, значения которых в этом массиве повторяются, оставив по одному.
Дана матрица размером 7х7. Поменять местами k-й столбец с k-ой строкой (первый элемент k–го столбца меняется с первым элементом k–й строки, второй со вторым и так далее). Значение k вводится с клавиатуры.
Вычислить среднее арифметическое значение элементов, лежащих на диагоналях квадратной матрицы. Заменить этим значением все элементы матрицы, не лежащие на диагоналях.
Трехмерный массив описывает журнал фиксации среднесуточной температуры в течение 10 календарных лет. Каждая страница журнала описывает один год, номера строк соответствуют месяцам года, а номера столбцов – дням месяца (считать, что в каждом месяце 30 дней). Определить самый жаркий и самый холодный дни в каждом календарном году и за весь период наблюдения (указать даты и температуру воздуха).
Из элементов массивов А (20) и С (20) образовать новый массив Х={a1,c1,a2,c2,…,a20,c20}
Вычислить
,
где P1
и P2
– первый и второй положительные элементы
линейного массива, N1
и N2
– первый и второй отрицательные элементы
того же массива. Массивы, в которых нет
хотя бы двух положительных и двух
отрицательных элементов, являются
некорректными.Поменять местами максимальный и минимальный элементы матрицы А (8х12). Если в массиве максимальное или минимальное значение встречается неоднократно, данный массив признается некорректным.
Вычислить среднее арифметическое значение элементов, лежащих на диагоналях квадратной матрицы. Заменить этим значением все диагональные элементы матрицы.
Результаты сессии, состоящей из четырех экзаменов, для трех групп из 25 студентов представлены трехмерным массивом 3х25х4. Оценка ставится по четырехбалльной системе; неявка обозначена единицей. Определить, экзамен по какой дисциплине вызвал наибольшие трудности, то есть по какой дисциплине средний балл наименьший.
В массиве А (27) наименьший элемент поместить на первое место, наименьший из оставшихся – на последнее место, следующий по величине – на второе место, следующий – на предпоследнее и так далее до середины массива. Все элементы массива должны различаться.
Вставить число 100 после второго положительного элемента линейного массива, сдвинув оставшиеся элементы к концу массива. Учесть изменение размера массива. Массив, в котором нет двух положительных элементов, признается некорректным.
Вычислить
,
где Sn
– сумма положительных элементов в
нечетных
строках матрицы Y (9х12), а So
– сумма отрицательных элементов в
четных строках той же матрицы.Дана матрица А (10х10). Отсортировать элементы, лежащие на главной диагонали, в порядке возрастания.
Трехмерный массив описывает журнал преподавателя. Каждая страница журнала содержит отметки о степени выполнения N студентами одной группы М лабораторных работ (в каждой строке – отметки одного студента, в каждой колонке – отметки по одной работе). Всего существует 5 степеней выполнения работы: 0 – ничего, 1 – получено задание, 2 – выполнена работа, 3 – сформирован отчет о работе, 4 – работа защищена. В журнале L страниц – по количеству студенческих групп. Пусть N=25, M=7, L=8. Подсчитать, сколько студентов будет допущено к экзамену в каждой группе и сколько из них получат экзамен «автоматом». К экзамену допускаются студенты, у которых есть отчеты по всем лабораторным работам. «Автоматом» проставляется экзаменационная оценка студентам, защитившим все работы.
Преобразовать заданный массив следующим образом: из положительных элементов вычесть первый, к отрицательным прибавить последний элемент, первый и последний элементы, а также равные 0 оставить без изменений.
Вставить после каждого пятого элемента линейного массива значение, равное сумме трех предшествующих элементов. Количество элементов в массиве после вставки должно увеличиться.
Отсортировать каждую строку матрицы М (8х5) в порядке возрастания.
Результаты сессии, состоящей из трех экзаменов, для группы из N студентов представлены матрицей К (Nх3). Оценка ставится по четырехбалльной системе; неявка обозначена единицей. Подсчитать количество неявок, неудовлетворительных, удовлетворительных, хороших и отличных оценок по каждому экзамену.
Куб состоит из n3 прозрачных и непрозрачных :элементарных кубиков. Имеется ли хотя бы один просвет по каждому из трех измерений? Если это так, вывести координаты каждого просвета.
Поменять местами максимальный отрицательный и первый положительный элементы массива В (18). Корректными признаются массивы, содержащие не менее одного положительного и не менее одного отрицательного элемента, в которых максимальное значение отрицательного элемента не повторяется.
Сформировать одномерный массив простых двузначных чисел. Простым называется натуральное число, не имеющее других делителей, кроме 1 и самого себя.
Дана матрица А (9х10). Расставить столбцы таким образом, чтобы элементы в первой строке были упорядочены по возрастанию.
Удалить из матрицы все строки, содержащие единицы, переместив оставшиеся к началу матрицы. Если в матрице строк не останется, вывести сообщение о том, что матрица пуста.
Трехмерный массив описывает журнал посещаемости одной группы вуза. Каждая страница журнала содержит сведения о присутствии N учеников на М занятиях по одной дисциплине (в каждой строке – сведения об одном студенте, в каждой колонке – сведения за одно занятие). Если студент присутствовал на занятии, в соответствующую ячейку записывается 1, если отсутствовал – 0. В журнале L страниц – по количеству изучаемых дисциплин. Пусть N=28, M=34, L=12. Определить, сколько в группе студентов, которые никогда не пропускают занятия, и есть ли такие, кто не появлялся на занятиях ни разу.
Вставить число 0 в середину массива М (20), предварительно сдвинув вправо значения элементов массива, начиная с 11-го. Выделить память сразу под 21 элемент.
Упорядочить линейный массив в порядке невозрастания значений его элементов.
В каждой строке матрицы А (7х9) поменять местами первый элемент и максимальный по модулю, если максимальное по модулю значение встречается в строке только один раз, при множественном повторении изменений производить не требуется.
Вычислить сумму элементов квадратной матрицы, лежащих справа от побочной диагонали.
Результаты сессии, состоящей из четырех экзаменов, для трех групп из 25 студентов представлены трехмерным массивом 3х25х4. Оценка ставится по четырехбалльной системе; неявка обозначена единицей. Определить, какая группа лучше подготовилась к сессии, получив более высокий средний балл.
Задан массив, состоящий из 50 неотрицательных элементов. Найти в нем индекс элемента, для которого сумма элементов, стоящих до него, наименее отличается от суммы элементов, стоящих после него.
Удалить из одномерного массива первый отрицательный элемент, сдвинув оставшиеся к началу массива.
В каждой строке матрицы В (9х8) сменить знак максимальных по модулю элементов на противоположный. Если все числа в строке по модулю одинаковы, изменений производить не требуется.
Отсортировать элементы каждого столбца матрицы в порядке возрастания.
Яйца фасуются на лотки 5х6 и помещаются в коробки в 2 стопки по 6 лотков в каждой. Предприниматель хочет купить прибор, который будет проверять яйца на целостность и сообщать, какой процент битых яиц находится в коробке и каково их местоположение. Опишите коробку яиц четырехмерным массивом и смоделируйте работу такого прибора.
Поменять местами максимальный и последний отрицательный элементы массива А (40). Если максимальное значение встречается в массиве неоднократно, то заменить все такие элементы значением последнего отрицательного. Массивы, в которых нет отрицательных элементов или все элементы равны, признаются некорректными.
Сформировать новый массив из элементов заданного целочисленного массива, кратных 7 или содержащих в записи числа цифру 7.
Определить седловые точки матрицы М (9х10). Седловая точка – элемент, являющийся одновременно максимальным в своей строке и минимальным в своем столбце.
Вычислить сумму положительных элементов матрицы Q (10х10), лежащих слева от побочной диагонали.
Результаты сессии, состоящей из четырех экзаменов, для трех групп из 25 студентов представлены трехмерным массивом 3х25х4. Оценка ставится по четырехбалльной системе; неявка обозначена единицей. Определить, экзамен по какой дисциплине вызвал наибольшие трудности, то есть по какой дисциплине получено больше всего двоек.
Заменить все элементы массива А (19), значения которых четны, на их квадраты, а нечетные удвоить. Проверить, изменилась ли сумма элементов массива.
Удалить из линейного целочисленного массива все элементы, кратные 3 или 5, передвинув на их место следующие элементы без нарушения порядка их следования.
Преобразовать матрицу Р (7х7) таким образом, чтобы минимальные элементы строк оказались на побочной диагонали, поменяв местами диагональный элемент с любым минимальным в строке. Матрицы, в которых совпадают значения элементов в каждой строке, являются некорректными.
Последний отрицательный элемент каждого столбца прямоугольной матрицы заменить нулем.
Блокнотик размером 4х6 см содержит 24 листа бумаги в клетку. Размер клетки 5х5 мм. Маленький мальчик заполнил этот блокнотик цифрами. Каждая цифра занимает одну клетку, свободных клеток мальчик не оставил. Известно, что чаще всего он писал свой возраст. Каков возраст мальчика и на какой странице соответствующая ему цифра встречается наибольшее число раз? Блокнотик запрограммировать трехмерным массивом.
Определить, есть ли в целочисленном массиве Q (20) заданное число Х, и если нет, то найти ближайшее к нему.
Удалить из массива первый положительный элемент, сдвинув оставшиеся к началу массива.
Найти количество элементов в каждой строке матрицы С (11х8), больших среднего арифметического элементов данной строки.
В заданной целочисленной матрице указать индексы всех элементов, имеющих наименьшее значение.
Трехмерный массив описывает школьный журнал одного класса. Каждая страница журнала содержит оценки N учеников за М уроков по одному предмету (в каждой строке – оценки одного ученика, в каждой колонке – оценки за один урок). В журнале L страниц – по количеству изучаемых школьниками предметов. Пусть N=25, M=50, L=15. Определить, есть ли в классе ученики, которые останутся на второй год, и если есть, то сколько их. На повторное обучение оставляют учеников, у которых средний балл хотя бы по одному предмету ниже 2,8.
Найти сумму элементов массива А (45), расположенных между максимальным и минимальным элементами. Положение максимума и минимума в массиве может быть любым, если они являются соседними элементами, вывести сообщение об этом. Массивы, в которых максимальное или минимальное значение встречается неоднократно, считать некорректными.
Сформировать новый массив из положительных нечетных элементов заданного линейного целочисленного массива.
Дана вещественная матрица D (7х9). Упорядочить (переставить) строки матрицы по возрастанию сумм элементов строк.
Определить среднее арифметическое значение элементов квадратной матрицы, лежащих на главной диагонали.
Авторы фильма «Ирония судьбы, или С легким паром!» утверждают, что чуть ли не в любом советском городе есть район новостроек, в котором несколько однотипных нумерованных улиц Строителей, на которых стоят однотипные дома. Одни квартиры в этих домах уже заселены, другие еще пустуют. Если по 5 улиц Строителей, на каждой из которых построено по 20 стоквартирных домов, найдется в 17 городах страны, то в скольких из них почувствовал бы себя как дома не способный отличить одну заселенную квартиру от другой Женя Лукашин, проживающий по адресу 3-я улица Строителей, дом 5, квартира 12? Типовую застройку городов запрограммировать четырехмерным массивом.
Вычислить среднее арифметическое значение элементов массива А (30), не встречающихся в массиве В (15).
Найти наименьший положительный элемент линейного массива, значение которого принадлежит диапазону [X, Y], и удалить его, сдвинув оставшиеся элементы к началу массива. Отрицательное или нулевое значение Y является некорректным. Если в массиве нет элементов, значения которых лежат в диапазоне [X, Y], вывести сообщение об этом. Если найдется несколько элементов, удовлетворяющих поставленным условиям, то удалить первый из них.
Отсортировать каждую строку матрицы А (6х7) в порядке убывания.
Определить, является ли данная целочисленная квадратная матрица симметричной относительно своей главной диагонали.
Детские пластиковые кубики трех цветов сложены в прямоугольный параллелепипед размером MxNxP кубиков. Определить, найдется ли в этом параллелепипеде хотя бы один слой толщиной в один кубик, расположенный параллельно какой-нибудь грани параллелепипеда, сложенный из кубиков одного цвета.
Определить, есть ли в целочисленном массиве М (15) пары соседних одинаковых элементов.
Найти наибольший отрицательный элемент одномерного массива и удалить его, сдвинув оставшиеся элементы к началу массива. Если в массиве несколько элементов имеют наибольшее отрицательное значение, то удалить их все. Массив, все элементы которого отрицательны и равны между собой, признается некорректным.
Дана вещественная матрица D (7х9). Упорядочить (переставить) строки матрицы по неубыванию наименьших элементов строк. Если в строке все элементы равны, это единственное значение считать наименьшим.
Вычислить среднее арифметическое значение элементов квадратной матрицы, лежащих слева от главной диагонали.
Трехмерный массив описывает школьный журнал одного класса. Каждая страница журнала содержит оценки N учеников за М уроков по одному предмету (в каждой строке – оценки одного ученика, в каждой колонке – оценки за один урок). В журнале L страниц – по количеству изучаемых школьниками предметов. Пусть N=26, M=48, L=14. Определить, есть ли в классе ученики, которые учатся без двоек.
Определить, является ли массив М (20) перестановкой последовательности натуральных чисел от 1 до 20, т. е. проверить, все ли числа из этого диапазона входят в указанный массив. Изменять порядок следования элементов в исходном массиве запрещено.
Поменять местами первый и последний отрицательные элементы одномерного массива. Если отрицательных элементов в массиве нет или присутствует только один отрицательный, вывести сообщение об этом.
Дана вещественная матрица А (8х8). Преобразовать матрицу: поэлементно вычесть последнюю строку из всех столбцов, кроме последнего.
Из матрицы Q (6х8) сформировать одномерный массив отрицательных чисел (просмотр по строкам).
Результаты сессии, состоящей из четырех экзаменов, для трех групп из 25 студентов представлены трехмерным массивом 3х25х4. Оценка ставится по четырехбалльной системе; неявка обозначена единицей. Подсчитать количество отличников и хорошистов в каждой группе.
Сформировать новый упорядоченный по убыванию массив из двух упорядоченных в том же порядке массивов А (12) и В (20).
Удалить из линейного целочисленного массива все нули, передвинув на их место следующие элементы без нарушения порядка их следования.
Дан целочисленный массив В (7х11). Определить, сколько в нем пар соседних одинаковых элементов. Элементы считаются соседними, если их индексы в столбцах и/или в строках различаются не более, чем на единицу.
Вычислить
,
где Xmin
и Xmax
– минимальный положительный и
максимальный элементы матрицы.Описать трехмерным массивом табуретку с перекладинами. Элементы, «принадлежащие» табуретке, приравнять единице, остальные обнулить. Вывод массива на экран осуществлять послойно.
Определить, сколько элементов массива Р (50) отличаются от среднего арифметического значения всех элементов этого массива не более, чем на 1.
Сформировать новый массив из элементов заданного целочисленного линейного массива, значения которых встречаются в нем неоднократно. В новом массиве все значения должны быть уникальными.
Дана матрица А(10х10). Расставить строки таким образом, чтобы элементы в первом столбце были упорядочены по убыванию.
Найти номера первых отрицательных элементов каждого столбца матрицы. Если в каком-то столбце нет отрицательных элементов, то вывести сообщение об этом.
Трехмерный массив описывает школьный журнал одного класса. Каждая страница журнала содержит оценки N учеников за М уроков по одному предмету (в каждой строке – оценки одного ученика, в каждой колонке – оценки за один урок). В журнале L страниц – по количеству изучаемых школьниками предметов. Пусть N=20, M=64, L=12. Определить, есть ли в классе ученики, которые учатся только на «хорошо» и «отлично».
Определить, есть ли в целочисленном массиве Q (10) заданное число Х, и если есть, то удалить его (если встречается неоднократно, то удалить все такие значения), а если нет, то добавить в конец массива.
Вычислить
,
где Sп
и Sо
– суммы положительных и отрицательных
элементов массива А (70).Заполнить матрицу А (7х8) нулями и единицами по следующему правилу: если сумма индексов элемента четная, элемент будет нулевым, если нечетная – единичным.
Сформировать одномерный массив, каждый элемент которого равен количеству отрицательных элементов соответствующего столбца заданной целочисленной матрицы.
Имеется тетрадь в клетку толщиной 12 листов, на каждой странице 50х30 клеток. В эту тетрадь учеником записаны примеры, содержащие числа и знаки операций, причем один символ занимает одну клетку. Подсчитать, сколько раз в этой тетради встречается цифра 5 и сколько из этих пятерок – оценки (оценки ставятся на полях тетради, ширина поля 4 клетки, учесть различное расположение полей на четных и нечетных страницах). Тетрадь запрограммировать трехмерным массивом
Вставить число X после последнего положительного элемента массива B из n элементов(n20), сдвинув последующие элементы к концу массива. Количество элементов в массиве после вставки увеличивается. Если положительных элементов в массиве нет, то вывести сообщение об этом.
Линейный массив содержит целые числа. Поменять знак у элементов, значение которых оканчивается на 2, на 5 или на 9, остальные удалить, передвинув на их место следующие элементы без нарушения порядка их следования.
Дана целочисленная матрица В (7х7). Найти номера столбцов, элементы которых образуют возрастающую последовательность (b1j<b2j<…<b7j).
Транспонированием квадратной матрицы называется такое ее преобразование, при котором строки и столбцы меняются ролями: i-й столбец становится i-й строкой. Дана квадратная матрица размера nxn. Получить транспонированную матрицу.
Трехмерный массив описывает школьный журнал одного класса. Каждая страница журнала содержит оценки N учеников за М уроков по одному предмету (в каждой строке – оценки одного ученика, в каждой колонке – оценки за один урок). В журнале L страниц – по количеству изучаемых школьниками предметов. Пусть N=25, M=40, L=15. Определить общую среднюю оценку ученика Х по всем предметам.
*
Касса. В массиве К (N) в порядке убывания представлены достоинства денежных знаков (купюр и монет) валютной системы некоторой страны. Реализовать выдачу в этой системе заданной суммы S минимальным числом денежных знаков.
Улитка. Матрицу А (MxN) заполнить натуральными числами от 1 до MxN по спирали, начинающейся в левом верхнем углу и закрученной по часовой стрелке.
Статистика. Трехмерный массив описывает журнал фиксации среднесуточной температуры в течение 10 календарных лет. Каждая страница журнала описывает один год, номера строк соответствуют месяцам года, а номера столбцов – дням месяца. Определить самый жаркий и самый холодный дни в каждом календарном году и за весь период наблюдения. Сформировать таблицу среднемесячных температур.
Кубик Рубика. Кубик Рубика описывается трехмерным массивом 3х3х3, в котором каждый фрагмент кубика задается комбинацией цветов, закодированных цифрами от 1 до 6. Соответственно, фрагмент, имеющий только одну цветную грань, кодируется одной цифрой, фрагмент, имеющий 2 цветных грани,– двумя цифрами, угловые фрагменты, имеющие по 3 цветных грани – тремя цифрами. Порядок цифр значения не имеет, то есть угловой фрагмент кубика, имеющий грани цветов 1, 2 и 3 может быть задан комбинациями 123, 312, 213, 132, 321 или 231. Центральный фрагмент кодируется нулем. Определить, является ли заданный пользователем трехмерный массив закодированным кубиком Рубика.
Контрольные вопросы
Что такое массив?
Что представляет собой имя массива?
Что представляет собой индекс элемента массива?
Как можно обратиться к элементу массива?
Как получить адрес элемента массива?
Как описать указатель на начало массива?
Как обратиться к элементу массива через указатель?
Существует ли связь между индексом элемента и его значением?
Чему равен индекс первого элемента массива?
Как проинициализировать массив?
Когда можно не указывать количество элементов массива при описании?
Какого типа могут быть элементы массива?
Какие операции можно производить над массивом как единым целым?
Почему при обработке массивов используют циклы?
Как поменять местами два элемента массива?
Чему равен индекс последнего элемента массива?
Возникнет ли ошибка при обращении к элементу массива, индекс которого больше индекса последнего элемента этого массива?
Может ли существовать массив из одного элемента? Если может, то как его описать?
Является ли р указателем на массив а[], если они объявлены следующим образом: int a[10], *p=a; ?
Что такое сортировка массива?
Что такое двумерный массив?
Как располагается двумерный массив в памяти компьютера?
Как проинициализировать двумерный массив?
Почему при объявлении двумерного массива с одновременной инициализацией первые скобки можно оставить пустыми, а вторые нет?
Если двумерным массивом программируется матрица, то при обращении к элементу двумерного массива сначала указывается индекс строки или индекс столбца?
Как вывести двумерный массив таблицей с колонками одинаковой ширины?
Что представляет собой имя двумерного массива?
Что представляет собой первый индекс элемента двумерного массива?
Что представляет собой второй индекс элемента двумерного массива?
Массив объявлен так: double ar[5][7]. Какого типа значение выражения ar[2]?
Как получить адрес элемента двумерного массива?
Как получить адрес начала двумерного массива?
Матрица программируется двумерным массивом. Как получить адрес третьей строки матрицы?
Можно ли просмотреть все элементы двумерного массива в одном цикле?
Указатель на первый элемент двумерного массива и указатель на начало двумерного массива имеют один тип? А значение?
Как обратиться к некоторому элементу двумерного массива через указатель на его первый элемент?
Как обратиться к элементу двумерного массива через указатель на начало массива?
Как описать трехмерный массив и как с ним работать?
Какими способами можно запрограммировать матрицу?
Когда матрица программируется двумерным массивом, чем отличается просмотр элементов матрицы по столбцам от просмотра по строкам?
Какова связь между индексами строки и столбца у элементов, лежащих на главной диагонали квадратной матрицы?
Какова связь между индексами строки и столбца у элементов, лежащих на побочной диагонали квадратной матрицы?
Всегда ли можно ли просмотреть все элементы матрицы в одном цикле? От чего это зависит?
В каких областях оперативной памяти могут располагаться данные при выполнении программы?
Какие переменные называют динамическими? Чем они отличаются от статических переменных?
С какой целью используют динамические переменные?
Как обращаются к динамическим переменным?
Какие бывают указатели? Как их описать?
Каким образом можно выделять память для динамических переменных и освобождать её?
Как определить, выделена память или нет?
Почему нельзя забывать освобождать выделенную память?
Чему равно значение указателя после освобождения области памяти, на которую он указывал?
Как разместить в динамической памяти массив?
Какими способами можно разместить в динамической памяти матрицу?
