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

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

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

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

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

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

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

Интервал:

Закладка:

Сделать

сохранением посредством fwrite() ?

б. В чем разница между сохранением символа S с помощью putc() и его сохранением посредством fwrite()?

8. Чем отличаются друг от друга следующие операторы?

printf("Здравствуйте, %s\n", name); fprintf(stdout, "Здравствуйте, %s\n", name); fprintf(stderr, "Здравствуйте, %s\n", name);

9. Режимы "a+", "r+" и "w+" открывают файл для чтения и записи. Какой из них лучше всего подходит для изменения содержимого, находящегося в файле?

Упражнения по программированию

1. Модифицируйте программу в листинге 13.1, чтобы она предлагала пользователю ввести имя файла и читала его ответ вместе использования аргументов командной строки.

2. Напишите программу копирования файлов, которая получает имя исходного файла и имя копии из командной строки. Используйте стандартный ввод-вывод и двоичный режим, если это возможно.

3. Напишите программу копирования файлов, которая предлагает пользователю ввести имя текстового файла, выступающего в роли исходного, и имя выходного файла. Программа должна использовать функцию toupper() из ctype.h для перевода текста в верхний регистр во время его записи в выходной файл. Применяйте стандартный ввод-вывод и текстовый режим.

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

5. Модифицируйте программу в листинге 13.6, чтобы вместо интерактивного интерфейса она использовала интерфейс командной строки.

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

7. Напишите программу, которая открывает два файла. Получать имена файлов можно либо через командную строку, либо предложив пользователю ввести их.

а. Сделайте так, чтобы эта программа выводила строку 1 первого файла, строку 1 второго файла, строку 2 первого файла, строку 2 второго файла и т.д., пока не будет выведена последняя строка более длинного (по количеству строк) файла.

б. Модифицируйте программу так, чтобы строки с одним и тем же номером выводились в одной экранной строке.

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

562 Глава 13

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

9. Модифицируйте программу в листинге 13.3, чтобы каждое слово было пронумеровано в соответствии с порядком его добавления в список, начиная с 1. Позаботьтесь о том, чтобы при втором запуске программы новая нумерация слов начиналась с того места, где была закончена нумерация при предыдущем запуске.

10. Напишите программу, открывающую текстовый файл, имя которого получается интерактивно. Организуйте цикл, который предлагает пользователю ввести позицию в файле. Затем программа должна вывести часть файла, начиная с этой позиции и заканчивая следующим символом новой строки. Цикл ввода должен завершаться при вводе отрицательного или нечислового значения.

11. Напишите программу, которая принимает два аргумента командной строки. Первый аргумент — это строка, а второй — имя файла. Программа должна искать в файле и выводить все строки, содержащие указанную. Поскольку задача ориентирована на строки, а не на символы, используйте функцию fgets() вместо getc(). Для поиска строки, содержащей заданную, применяйте функцию strstr() (кратко описанную в упражнении 7 из главы 11) из стандартной библиотеки С.

12. Создайте текстовый файл, состоящий из 20 строк но 30 целых чисел. Целые значения должны входить в диапазон от 0 до 9 и отделяться друг от друга пробелами. Файл является цифровым представлением изображения, при этом значения от 0 до 9 воспроизводят возрастающие уровни темноты. Напишите программу, которая читает содержимое этого файла в массив элементов int с размером 20 на 30. При грубом подходе к преобразованию такого цифрового представления в изображение программа должна использовать значения из этого массива для инициализации массива элементов char с размером 20 на 31. При этом 0 соответствует символу пробела, 1 — символу точки и т.д.; большее значение представляется символом, занимающим большую площадь. Например, символ # может использоваться для представления значения 9. Последний символ (31-й) в каждой строке должен быть нулевым, образуя в итоге массив из 20 строк. Программа должна отобразить результирующее изображение (т.е. вывести строки) и также сохранить результат в текстовом файле. Например, предположим, что начальные данные выглядят так:

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

Интервал:

Закладка:

Сделать

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

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


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

Обсуждение, отзывы о книге «Язык программирования C. Лекции и упражнения (6-е изд.) 2015» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x