ЛР1. Указатели и массивы, строки, массивы строк
Задание 1 (50 баллов)
Дано натуральное значение N. Создать динамический двумерный массив N*N, заполнить нулями и предложить
пользователю двухуровневое меню управления матрицей:
- Вывод содержимого массива
- Заполнение массива
- Вывести содержимое массива
- Обнулить массив
- Заполнить массив случайными значениями
- Изменить элемент массива по его координатам. Если координаты выходят за пределы массива,
внести в структуру массива минимально необходимые для выполнения операции изменения.
- Выйти в предыдущее меню
- Манипуляции с массивом
- Вставить строку. Указывается количество элементов в строке и номер строки, после которой будет произведена вставка.
Если номер отрицательный - вставка в начало массива. Если номер равен или больше номеру последней строки - вставка в конец
массива.
- Удалить строку. Указывается номер строки.
- Отсортировать строки массива по возрастанию суммы элементов строк.
- Повернуть массив на 90 градусов. Указывается направление поворота. Перед поворотом массив приводится к прямоугольной форме
дополнением нулями коротких строк до размеров самой длинной строки.
- Выйти в предыдущее меню
- Завершить работу с программой
В каждый момент времени на экране должен отображаться отображается только один уровень меню.
Задание 2 (30-50 баллов)
Разработать утилиту, которая будет выводить на экран переменные окружения, в значениях которых встречаются слова,
переданные в командной строке. Поиск производится только в значениях переменных, не затрагивая их имен. Каждая найденная
переменная выводится в двух строках: имя и значение. Затем - пустая строка-разделитель.
При решении задачи запрещается использовать системные функции для манипуляции с переменными окружения, следует обращаться
к передаваемому в функцию main массиву env. Параметры программы получать из массива argv.