ВУЗ:
Составители:
Рубрика:
4
Лабораторная работа №1
СТРУКТУРЫ
Цель работы: изучить синтаксис и правила работы со структурами.
Теоретические сведения
При разработке программ важным является выбор эффективного способа
представления данных. Во многих случаях недостаточно объявить простую
переменную или массив, а нужна более гибкая форма представления данных.
Таким элементом может быть структура, которая позволяет
включать в себя
разные типы данных, а также другие структуры. Приведем пример, в котором
использование структуры позволяет эффективно представить данные. Таким
примером будет инвентарный перечень книг, в котором для каждой книги
необходимо указывать ее наименование, автора и год издания. Причем
количество книг может быть разным, но будем полгать, что не
более 100. Для
хранения информации об одной книге целесообразно использовать структуру,
которая задается в языке С с помощью ключевого слова struct, за которым
следует ее имя. Само определение структуры, т.е. то, что она будет содержать,
записывается в фигурных скобках {}. В данном случае структура будет иметь
следующий вид:
struct book {
char title[100]; //наименование книги
char author[100]; //автор
int year; //год издания
};
Такая конструкция задает своего рода шаблон представления данных, но не
сам объект, которым можно было бы оперировать подобно переменной или
массиву. Для того чтобы объявить переменную для структуры с именем book
используется такая запись:
struct book lib; //объявляется переменная типа book
После объявления переменной lib имеется возможность работать со
структурой как с единым объектом данных, который имеет три поля: title,
author и year. Обращение к тому или иному полю структуры осуществляется
через точку: lib.title, lib.author и lib.year. Таким образом, для записи в структуру
информации можно использовать следующий фрагмент программы:
printf(“Введите наименование книги: “);
scanf(“%s”,lib.title);
printf(“Введите автора книги: “);
scanf(“%s”,lib.author);
Страницы
- « первая
- ‹ предыдущая
- …
- 2
- 3
- 4
- 5
- 6
- …
- следующая ›
- последняя »