Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Сформировать запись библиотечной картотеки: шифр, автор, наименование книги, количество страниц, год издания, издательство. Вывести запись в виде библиотечной карточки



Глава 7. Типы определяемые пользователем

Структуры

Языки программирования Си/С++ поддерживают определяемые пользователем типы данных, например, структуры.

Структура – это тип данных, который объединяет несколько переменных, возможно разного типа. Переменные, которые объединены структурой, называются элементами или полями структуры. Структуры целесообразно использовать там, где необходимо объединить разнообразные данные, относящиеся к одному объекту.

Пример определения структуры:

struct student

{

char fam[20];

char name[20];

int kurs;

char group[5];

};

Для того, чтобы объявить переменные типа struct student, можно написать:

struct student stud1;

Доступ к полям структуры осуществляется с помощью операции ”точка”.

Например, printf("Курс: %d",stud1.kurs);

Структуры, как и переменные другого типа, могут объединяться в массивы структур. Чтобы объявить массив структур, необходимо сначала задать шаблон структуры, а затем объявить массив:

struct student students[100];

Пример 7.1

Сформировать запись библиотечной картотеки: шифр, автор, наименование книги, количество страниц, год издания, издательство. Вывести запись в виде библиотечной карточки.

/*************************************************/

/* Структуры */

/* Сформировать запись библиотечной картотеки: */

/* шифр, автор, наименование книги, количество */

/* страниц, год издания, издательство. */

/* Вывести запись в виде библиотечной карточки. */

/*************************************************/

#include <stdio.h>

#include <conio.h>

#define size 20

struct kartochka // структура типа kartochka

{

int shifr; // шифр

char avtor[30]; // автор

char nazv[40]; // название книги

int kol; // количество

int god; // год издания

char izdat[20]; // издательство

};

void main()

{

clrscr();

// Объявление переменной типа kartochka

struct kartochka book;

// Ввод данных в карточку

printf("\n\t Ввод данных о книге: \n\n");

printf("\t Автор: ");

gets(book.avtor);

printf("\t Название: ");

gets(book.nazv);

printf("\t Количество страниц: ");

scanf("%d",&book.kol);

printf("\t Год издания: ");

scanf("%d",&book.god);

fflush(stdin); // очистка буфера

printf("\t Издательство: ");

gets(book.izdat);

printf("\t Шифр: ");

scanf("%d",&book.shifr);

// Вывод карточки

printf("\n\n\t Вывод данных о книге: ");

printf("\n \t ----------------------------------");

printf("\n \t \t КАРТОЧКА: \n\n");

printf("\n \t Шифр: %d",book.shifr);

printf("\n \t Автор: %s",book.avtor);

printf("\n \t Название: %s",book.nazv);

printf("\n \t Количество страниц: %d",book.kol);

printf("\n \t Год издания: %d",book.god);

printf("\n \t Издательство: %s",book.izdat);

printf("\n\t -----------------------------------");

getch();

}





Дата публикования: 2015-01-23; Прочитано: 665 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2025 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.618 с)...