Стивен Прата - Язык программирования C. Лекции и упражнения (6-е изд.) 2015

Тут можно читать онлайн Стивен Прата - Язык программирования C. Лекции и упражнения (6-е изд.) 2015 - бесплатно полную версию книги (целиком) без сокращений. Жанр: Прочая старинная литература, издательство Вильямс, год 0101. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.

Стивен Прата - Язык программирования C. Лекции и упражнения (6-е изд.) 2015 краткое содержание

Язык программирования C. Лекции и упражнения (6-е изд.) 2015 - описание и краткое содержание, автор Стивен Прата, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Язык программирования C. Лекции и упражнения (6-е изд.) 2015 - читать онлайн бесплатно полную версию (весь текст целиком)

Язык программирования C. Лекции и упражнения (6-е изд.) 2015 - читать книгу онлайн бесплатно, автор Стивен Прата
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

}

Классы хранения, связывание и управление памятью 527

printf("Программа завершена.\n"); return 0;

}

Ниже показан пример вывода:

Введите 0 для метрического режима или 1 для американского режима: О Введите пройденное расстояние в километрах: 600 Введите объем израсходованного топлива в литрах: 78.8 Расход топлива составляет 13.13 литров на 100 км.

Введите 0 для метрического режима или 1 для американского режима (-1 для завершения): 1

Введите пройденное расстояние в милях: 434

Введите объем израсходованного топлива в галлонах: 12.7

Расход топлива составляет 34.2 мили на галлон.

Введите 0 для метрического режима или 1 для американского режима (-1 для завершения) : 3

Указан недопустимый режим. Используется режим 1 (американский).

Введите пройденное расстояние в милях: 388

Введите объем израсходованного топлива в галлонах: 15.3

Расход топлива составляет 25.4 мили на галлон.

Введите 0 для метрического режима или 1 для американского режима (-1 для завершения): -1 Программа завершена.

Если пользователь введет некорректный режим, программа сообщает об этом и использует режим, который был выбран в последний раз. Реализуйте заголовочный файл pel2-2a.li и файл исходного кода ре12-2а. с, чтобы обеспечить работоспособность программе. В файле исходного кода должны определяться три переменных с областью видимости в пределах файла и внутренним связыванием. Одна переменная представляет режим, вторая — расстояние и третья — расход топлива. Функция get_info() запрашивает ввод данных согласно выбранному режиму и сохраняет ответы в переменных с областью видимости в пределах файла. Функция show_info() вычисляет и отображает расход топлива на основе выбранного режима. Можете считать, что пользователь вводит только числовые значения.

3. Переделайте программу, описанную в упражнении 2, чтобы в ней использовались только автоматические переменные. Обеспечьте в программе гот же самый пользовательский интерфейс, т.е. она должна предлагать пользователю ввести режим и т.д. Однако у вас будет другой набор вызовов функций.

4. Напишите и протестируйте в цикле функцию, которая возвращает количество ее вызовов.

5. Напишите программу, которая генерирует список из 100 случайных чисел в диапазоне от 1 до 10, отсортированный по убыванию. (Можете приспособить к типу int алгоритм сортировки из главы 11, только в этом случае сортируйте сами числа.)

6. Напишите программу, которая генерирует 1000 случайных чисел в диапазоне от 1 до 10. Не сохраняйте и не выводите эти числа, а выводите лишь то, сколько раз генерировалось каждое число. Программа должна делать это для 10 разных начальных значений. Появляются ли числа в одинаковых количествах? Можете использовать функции из этой главы или функции rand() и srand() из ANSI С, которые следуют тому же формату, что и рассмотренные здесь. Это один из способов исследования недетерминированности конкретного генератора случайных чисел.

528 глава 12

7. Напишите программу, которая ведет себя подобно модификации листинга 12.13, которая обсуждалась после представления вывода из программы, показанной в листинге 12.13. То есть программа должна давать вывод следующего вида:

Введите количество бросаний или q для завершения: 18 Сколько граней и сколько костей? б 3 Имеем 18 бросаний 3 костей с 6 гранями.

12 10 6 9 8 14 8 15 9 14 12 17 11 7 10

13 8 14

Введите количество бросаний или q для завершения: q

8. Ниже приведена часть программы:

Завершите программу предоставив определения функций make arrayt и show - фото 405

Завершите программу, предоставив определения функций make arrayt) и show array(). Функция make array() принимает два аргумента. Первый аргумент- это количество элементов в массиве значений int, а второй аргумент — значение, которое должно быть присвоено каждому элементу массива. Эта функция использует malloc() для создания массива подходящего размера, присваивает каждому элементу заданное значение и возвращает указатель на массив. Функция show array() отображает содержимое массива по восемь элементов в строке.

9. Напишите программу со следующим поведением. Сначала она запрашивает количество слов, которые нужно ввести. Затем она предлагает ввести слова, после чего их отображает. Воспользуйтесь malloc() и ответом на первый запрос (количество слов), чтобы создать динамический массив с подходящим количеством указателей на char. (Обратите внимание, что поскольку каждый элемент в массиве является указателем на char, возвращаемое значение функции malloc() должно сохраняться в указателе на указатель на char.) При чтении строки программа должна читать слово во временный массив элементов char, с помощью

Классы хранения, связывание и управление памятью 529

malloc() выделять пространство, достаточное для хранения слова, и помещать адрес в массив указателей на char. Далее программа должна копировать слово из временного массива в выделенное пространство памяти. Таким образом, в итоге получается массив указателей на char, каждый из которых ссылается на объект с размером, необходимым для хранения конкретного слова. Результаты пробного запуска должны выглядеть следующим образом:

Сколько слов вы хотите ввести? 5 Теперь введите 5 слов:

Мне понравилось выполнять это упражнение

Вот введенные вами слова:

Мне

понравилось

выполнять

это

упражнение

13

Файловый

ввод-вывод

В ЭТОЙ ГЛАВЕ...

• Функции: fopen(), getc(), putc(), exit(), fclose(), fprintf(),fscant(), fgets(),fputs(), rewind(), fseek(),ftell(),fflush(), fgetpos(), fsetpos(),feof(),terror(), ungetc(), setvbuf(), tread(), fwrite()

• Обработка файлов с использованием семейства стандартных функций ввода-вывода С

• Текстовые и двоичные режимы, текстовый и двоичный форматы, буферизированный и небуферизированный ввод-вывод

• Применение функций, которые позволяют осуществлять последовательный и произвольный доступ в файлы

532 Глава 13

Ф

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

Взаимодействие с файлами

Часто вам нужны программы, которые могут читать информацию из файлов или записывать результаты в файл. В главе 8 вы узнали, что одной из таких форм взаимодействия между программой и файлом является перенаправление в файл. Этот метод прост, но ограничен. Например, пусть необходимо написать интерактивную программу, которая запрашивает названия книг, а затем сохраняет весь список в файле. Если вы примените перенаправление, как в

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

Интервал:

Закладка:

Сделать


Стивен Прата читать все книги автора по порядку

Стивен Прата - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Язык программирования C. Лекции и упражнения (6-е изд.) 2015 отзывы


Отзывы читателей о книге Язык программирования C. Лекции и упражнения (6-е изд.) 2015, автор: Стивен Прата. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x