Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник Моя первая программа на С++.docx
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
6 Мб
Скачать
☆

Вопросы

  1. Где может быть использован структурный тип данных?

  2. Как определить структуру?

  3. В чем заключается различие между типом записи структуры и структурной переменной?

  4. Как обратиться к элементу структуры?

  5. Может ли структура содержать элементы одного типа?

  6. Что такое указатель?

  7. Если в программе присутствует определение типа float *num, в чем будут выражаться различия между num и *num?

  8. Для чего в языке Си используют указатели?

  9. Каким образом указатели передаются функции?

Упражнения

  1. Напишите программу, в которой структура используется для состав- ления инвентарной описи. Информация включает в себя название продукта, цену, количество, имя поставщика.Внесите изменения в программу из упражнения 1 с тем, чтобы можно было вводить ин- формацию в массив структур, состоящий из 20 элементов.

  2. Внесите изменения в программу из упражнения 2 так, чтобы выво- дить на экран общую стоимость включенных в опись товаров.

  3. Напишите программу, в которой две переменные типа float опреде- ляются в main() как локальные, а затем используются в функции,

вычисляющей квадраты обоих чисел.

  1. Объясните, почему следующая программа написана неверно:

5. main()

6. {

7. struct CD

8. {

  1. char description[40];

  2. char category[12];

  3. char name[20];

  4. float cost;

  5. int number;

  6. } disc;

  7. puts("Введите сведения о диске");

  8. printf("Введите название: ");

  9. gets(name);

  10. printf("Введите описание: ");

  11. gets(description);

  12. printf("Введите категорию: ");

  13. gets(category);

  14. printf("Введите цену: ");

  15. scanf("%f", &cost);

  16. printf("Введите номер ячейки: ");

  17. scanf("%d", &number);

  18. puts("Введена следующая информация о диске: ");

  19. printf("Название: %s\n", name);

  20. printf("Описание: %s\n", description);

  21. printf("Категория: %s\n", category);

  22. printf("Цена: %6.2f\n", cost);

  23. printf("Номер п/п: %d\n", number);

}

Глава 12

ВЫВОД НА ДИСК И ПРИНТЕР

Простое отображение информации на дисплее используется практически в каждой программе, но возмож- ности его несколько ограничены. Даже использование временной остановки выполнения программы, что- бы дать пользователю возможность ознакомиться со всеми сообщениями, не решает проблемы полностью: как только сообщение уходит за пределы экрана, его уже невозможно прочитать без повторного запуска программы.

Более того, значения, присвоенные переменным, сохраняются только на время выполнения программы. Как только работа программы завершена, вся введенная информация теряется. Это означает, что если вы, например, ввели сведения о своей коллекции компакт-дисков в массив структурных переменных, они ут- рачиваются после завершения работы программы, и когда вы в следующий раз обратитесь к компьютеру, все данные придется вводить заново.

Для того чтобы сохранить информацию для себя или ознакомить других людей с результатами работы своей программы, нужно распечатать эти результаты на бумаге. А чтобы иметь возможность в любой мо- мент обратиться к однажды введенным данным, необходимо сохранить информацию в файле на диске.