КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Практическая работа № 11. Тема: Применение указателей
Тема: Применение указателей Цель: рассмотреть возможности использования указателей при решении задач на обработку массивов и списков. Вид работы: фронтальный. Время выполнения: 4 часа. Теоретические сведения: Указатели в Си++ используются для связи переменных с машинными адресами. Понятие указателя тесно сплетено с обработкой массивов и строк. Массивы в Си++ могут рассматриваться как специальная форма указателя, связанная с непрерывной областью памяти для хранения индексируемой последовательности значений. Если v – переменная, то &v – это адрес или место в памяти, где хранится её значение. Оператор определения адреса & (address operator) является унарным и имеет такой же приоритет и порядок выполнения справа налево, как и остальные унарные операторы. В программе можно объявить переменные-указатели и затем использовать их для получения адресов в качестве значений. Объявление int *p; говорит, что переменная p будет иметь тип “указатель на целое”. Унарные операторы new и delete служат для управления свободной памятью (free store). Свободная память – это предоставляемая системой область памяти для объектов, время жизни которых напрямую управляется программистом. Программист создаёт объект с помощью ключевого слова new, а уничтожает его, используя delete. Ход работы: 1) Составьте словесный алгоритм решения каждой задачи. 2) Оформите в тетрадь листинги программ. Задания к работе: Вариант №1 1. Найти в каждом столбце матрицы S(n, m) максимальный и минимальный элементы и поместить их на место первого и последнего элемента столбца соответственно. Вывести на экран исходную и полученную матрицы в общепринятом виде. Для создания массива используйте указатели.
Вариант №2 1. Упорядочить по убыванию элементы каждого столбца матрицы A(n, m). Вывести на экран исходную и полученную матрицы в общепринятом виде. Для создания массива используйте указатели.
Вариант №3 1. Для целочисленной матрицы X(n, m) найти для каждой строки число элементов, кратных пяти, и наибольший из полученных результатов. Для создания массива используйте указатели.
Вариант №4 1. Из матрицы A(n, m) записать в массив B подряд все положительные элементы, в матрицу C подряд все отрицательные. Для создания массивов используйте указатели.
Вариант №5 1. Найти в каждой строке матрицы G(n, m) максимальный и минимальный элементы и поместить их на место первого и последнего элемента строки соответственно. Вывести на экран исходную и полученную матрицы в общепринятом виде. Для создания массива используйте указатели.
Вариант №6 1. Дана матрица Z(n, n), получите транспонированную. Транспонированием квадратной матрицы называется такое ее преобразование, при котором строки и столбцы меняются ролями: i-й столбец становится i-й строкой. Для создания массивов используйте указатели. На экран выведите обе матрицы в общепринятом виде.
Вариант №7 1. Переписать подряд в массив Y чётные элементы матрицы X(n, m), а в массив Z – нечётные элементы. Для создания массивов используйте указатели. На экран выведите три массива в общепринятом виде.
Контрольные вопросы: 1) Дайте определение понятию “указатель”. 2) Для чего предназначены указатели? Охарактеризуйте основные области использования. 3) Какие функции для работы с памятью вы знаете? 4) Напишите пример выделения памяти для произвольного массива. 5) Приведите пример использования операции разыменования. 6) Что такое список и как его создать с помощью указателя?
Рекомендуемая литература: 1.Исаченко О.В. Программное обеспечение компьютерных систем: Учебное пособие.- М.: ИНФРА-М
2.Сальников Ю.Н. Программирование: Базовый курс: Учебное пособие/ Ю.П.Сальников.- М.: Маркет. 3.Лесневский А.С. Объектно- ориентированное программирование для начинающих:Учебное пособие - М.: БИНОМ. 4.Голицына О.Л. Языки программирования: Учебное пособие /О.Л.Голицына- М.:ФОРУМ; ИНФРА-М.
Дата добавления: 2014-12-16; Просмотров: 555; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |