Array M. УЭИТ - Язык Си - руководство для начинающих

Здесь есть возможность читать онлайн «Array M. УЭИТ - Язык Си - руководство для начинающих» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Москва, Год выпуска: 1988, ISBN: 1988, Издательство: Мир, Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Язык Си - руководство для начинающих: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Язык Си - руководство для начинающих»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

M. УЭИТ   С. ПРАТА    Д. МАРТИН
Язык Си — руководство для начинающих

Язык Си - руководство для начинающих — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Язык Си - руководство для начинающих», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

/* инвентаризация большого количества книг */

#include

#define MAXTIT 40

#define MAXAUT 40

#define MAXBKS 100 /* максимальное количество книг */

#define STOP " " /* нулевая строка прекращает ввод */

struct book { /* создание шаблона типа book */

char title [MAXTIT];

char author [MAXAUT];

float value; };

main ( )

{

struct book libry[MAXBKS]; /* массив структур типа book */

int count = 0;

int index;

printf("Введите, пожалуйста, название книги.\n");

printf(" Нажмите клавишу [ввод] в начале строки для останова.\n");

while(strcmp(gets(libry [count].title), STOP) != 0 &&

count < MAXBKS)

{ printf("Введите теперь фамилию автора.\n");

gets(libry [count].author);

printf("Введите теперь цену.\n");

scanf(" %f", & libry [count++].value);

while(getchar()!='n'); /* очистите строку ввода */

if(counts < MAXBKS)

printf("Введите название следующей книги.\n");

} printf ("Вот список ваших книг: \n");

for(index = 0; index < count; index++)

printf("%s, %s: %p.2f\n", libry [index].title, libry[index].author,

libry[index].value);

}

РИC. 14.2. Программа инвентаризации большого количества книг.

Вот пример работы программы:

Введите, пожалуйста, название книги.

Нажмите клавишу [ввод] в начале строки для останова.

Искусство программирования

Введите теперь фамилию автора. Д.Кнут

Введите теперь цену.

5р.67

Введите название следующей книги.

... еще вводы...

Вот список ваших книг:

Искуство программирования для ЭВМ, Д.Кнут: 5р.67

ПЛ/1 для программистов, Скотт Р., Сондак Н: 1р.08

Программирование на языке Паскаль, П. Грогоно: 1р.30

Язык Фортран 77, Г. Кантан: 0р.80

Трансляция языков программирования, Ф. Вайнгартен: 0р.75

Язык Эсперанто, М.И. Исаев: 0р.60

Ассемблеры и загрузчики, Д.Баррон: 0р.30

Структурное программирование, У. Дал, Э. Дейкстра, К. Хоор: 1р.11

Операционные системы, Г. Катцан: 2р.25

Параллельные вычислительные системы, Б.А.Головкин: 2р.50

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

Описание массива структур

Процесс описания массива структур совершенно аналогичен описанию любого другого типа массива:

struct book libry [MAXBKS];

Этот оператор объявляет libryмассивом, состоящим из MAXBKS-элементов. Каждый элемент массива представляет собой структуру типа book. Таким образом, libry[0]является book-структурой, libry[1]- второй book-структурой и т. д. Рис. 14.3 может помочь вам представить это. Имя libryсамо по себе не является именем структуры; это имя массива, содержащего структуры.

РИС 143 Maccив структур Определение элементов массива структур При - фото 80

РИС. 14.3. Maccив структур.

Определение элементов массива структур

При определении элементов массива структур мы применяем те же самые правила, которые используются для отдельных структур: сопровождаем имя структуры операцией получения элемента и именем элемента:

libry [0].value value - первый элемент массива

libry [4].title title - пятый элемент массива

Заметим, что индекс массива присоединяется к libry, а не к концу имени:

libry. value[2] /* неправильно */

libry[2].value /* правильно */

Мы используем libry[2].value, потому что libry[2] является именем структурной переменной точно так же, как libry[l]является именем другой структурной переменной, а ранее doyleбыло именем структурной переменной.

Между прочим, что бы это значило?

libry[2].title[4]

Это был бы пятый элемент элемента title(т. е. title[4]) структуры типа book, описанный третьей структурой (т.e. libry[2]). В нашем примере им был бы символ р. Это означает, что индексы, находящиеся справа от операции " .", относятся к отдельным элементам, в то время как индексы, расположенные слева от операции, относятся к массивам структур.

Теперь покончим с этой программой.

Детализация программы

Главное отличие ее от нашей первой программы заключается в том, что теперь создается цикл для считывания названий книг. Мы начинаем цикл с while-условия:

while(strcmp(gets(libry [count].title), STOP) != 0

&& count < MAXBKS)

Выражение gets(libry [count].title)считывает вводимую строку, содержащую название книги. Функция strcmp( )сравнивает эту строку со STOP, которая является " " , т.e. пустой строкой. Если пользователь нажмет клавишу [ ввод] в начале строки, то перепишется пустая строка и цикл закончится. Мы также должны проверять, не превысило ли число считанных на текущий момент книг предельного размера массива.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Язык Си - руководство для начинающих»

Представляем Вашему вниманию похожие книги на «Язык Си - руководство для начинающих» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Язык Си - руководство для начинающих»

Обсуждение, отзывы о книге «Язык Си - руководство для начинающих» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x