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

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

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

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

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

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

Интервал:

Закладка:

Сделать

Строка 5: только эта строка (пустая) в программе является правильной!

Строка 6: используйте для присваивания символ =, а не :=. (Судя по всему, Джо немного знаком с языком Pascal.) Для количества недель в году укажите 52, а не 56.

Строка 7: эта строка должна выглядеть следующим образом:

printf("В году содержится %d недель.\n", s);

Строка 9: эта строка отсутствует, но должна существовать и состоять из закрывающей фигурной скобки }.

После внесения всех исправлений код должен выглядеть следующим образом:

#include

int main(void) /* выводит количество недель в году */

{

int s;

s = 52;

printf("В году содержится %d недель.\n", s); return 0;

}

5. а. Бе, бе, Черная Овечка.У тебя найдется шерсть для меня?

(Обратите внимание на отсутствие пробела после точки. Пробел можно вставить, указав " У вместо "У.)

б. Прочь!

Вот наглая свинья!

(Обратите внимание на то, что курсор остается в конце второй строки.)

В. Что?

Не/nклюет?

(Обратите внимание, что обычная косая черта (/) не оказывает такое же влияние, как обратная косая черта (\); она просто выводится на экран.)

Г. 2 + 2 = 4

(Обратите внимание на замену каждой последовательности символов %d значением соответствующей переменной из списка. Кроме того, символ + означает операцию сложения, и это вычисление может выполняться внутри оператора printf().

6. int и char (main — имя функции, function (функция) — технический термин, относящийся к языку С, а = представляет собой символ операции.)

7. printf("Текст содержал %d слов и %d строк.\n", words, lines);

8. После выполнения строки 7 значение а равно 5, а b — 2. После выполнения строки 8 значения а и b равны 5. После выполнения строки 9 значения а и b по-прежнему равны 5. (Обратите внимание, что значение а не может быть равным 2, поскольку на момент выполнения оператора а = b; значение переменной b уже изменено на 5.)

9. После выполнения строки 7 значение х равно 10, а значение b — 5. После выполнения строки 8 значение х равно 10, а значение у — 15. После выполнения строки 9 значение х равно 150, а значение у — 15.

794 Приложение А

Ответы на вопросы для самоконтроля из главы 3

1. а. int, возможно short, unsigned или unsigned short; население города пред

ставляет собой целое число.

б. float; маловероятно, чтобы стоимость была целым числом. (Можно было бы использовать тип double, но в данном случае повышенная точность не требуется.)

в. char.

г. int, возможно unsigned.

2. Во-первых, тип long может вмещать большие числа, чем int; во-вторых, если требуется обработка больших значений, то использование типа, для которого во всех системах гарантируется длина, по меньшей мере, 32 бита, улучшает переносимость кода.

3. Чтобы получить в точности 32 бита, можно использовать тип int32_t, если он определен для данной системы. Для более короткого типа, который мог бы хранить, по меньшей мере, 32 бита, необходимо применять int_least32_t. Чтобы получить тип, который обеспечил бы самые быстрые вычисления с 32-битными значениями, следует выбрать int_fast32_t.

4. а. Константа char (но сохраненная как значение типа int).

б. Константа double.

в. Константа unsigned int, представленная в шестнадцатеричном формате.

г. Константа double.

5. Строка 1: должна иметь вид #include .

Строка 2: должна иметь вид int main (void).

Строка 3: необходимо использовать (, а не (.

Строка 4: между g и h должна находиться запятая, а не точка с запятой.

Строка 6 (пустая): в порядке.

Строка 7: перед е должна находиться хотя бы одна цифра. В данном случае вполне подошло бы 1е21 или 1.0е21, хотя они достаточно большие. Строка 8: в порядке, во всяком случае, с точки зрения синтаксиса.

Строка 9: необходимо применять }, а не ).

Отсутствующие строки. Во-первых, переменной rate никогда не присваивается значение. Во-вторых, переменная h никогда не используется. Кроме того, программа совершенно не информирует пользователя о результатах вычислений. Ни одна из этих ошибок не помещает запуску программы (хотя может быть выведено предупреждение о неиспользуемой переменной), но они преуменьшают и без того ограниченную ее пригодность. Кроме того, в конце программы должен быть предусмотрен оператор return.

Ниже представлена одна из возможных корректных версий:

Ответы на вопросы для самоконтроля 795 Приложение А Вот одна из возможных - фото 600

Ответы на вопросы для самоконтроля 795 Приложение А Вот одна из возможных - фото 601

Ответы на вопросы для самоконтроля 795

Приложение А

картинка 602Вот одна из возможных корректных версий:

#include

int main(void) /* эта программа безупречна */

{

int cows, legs;

printf("Сколько коровьих ног вы насчитали?\n"); scanf("%d", slegs); cows = legs / 4;

printf("Отсюда следует, что есть %f коров(а)", cows); return 0;

}

11. а. Символ новой строки.

б. Символ обратной косой черты.

в. Символ двойной кавычки.

г. Символ табуляции.

Ответы на вопросы для самоконтроля из главы 4

1. Программа функционирует некорректно. Первый оператор scanf() читает только имя, оставляя фамилию незатронутой, но по-прежнему находящейся в буфере ввода. (Этот буфер представляет собой просто временную область, используемую для хранения входных данных.) Когда следующий оператор scanf() переходит к считыванию веса, он продолжает чтение с того места, где была завершена предыдущая попытка, и пытается прочитать фамилию как значение веса. Это ведет к ошибке работы scanf(). С другой стороны, если в ответ на запрос имени ввести что-то вроде Иван 144, то 144 будет применяться в качестве значения веса, несмотря на то, что оно введено до выдачи запроса на ввод веса.

2. а. Он продал эту картину за $234.50

б.hi!

(Примечание: первый символ — это символьная константа, второй — десятичное целое значение, преобразованное в символ, а третий — восьмеричное ASCII-представление символьной константы.)

в. Его Гамлет был хорош, и без намека на вульгарность, содержит 51 символов.

Г. Является ли 1.20е+003 тем же, что и 1201.00?

3. Необходимо использовать символы \", как показано ниже:

printf("\"%s\"\nсодержит %d символов.\n", Q, strlen(Q));

4. Корректная версия выглядит следующим образом:

картинка 603

#include /* не забудьте включить эту строку*/

Ответы на вопросы для самоконтроля 797

char name [40]; /* создайте массив */

printf("Введите свое имя.\n"); /* вставьте символ \n для улучшения

читабельности */

scanf("%s", name);

printf("Хорошо, %C, а сколько вам лет?\n", name); /* %s для строки */ scanf ("%d", sage); /* %d, а не %f, sage, а не age */

xp = age + X;

printf("Неужели, %s! Вам должно быть, по меньшей мере, %d.\n", В, хр); return 0; /* не перезапускать */

}

5. Вспомните о конструкции %%, предназначенной для вывода символа %.

printf("Данный экземпляр книги \"%s\" стоит $%0.2f.\n", BOOK, cost); printf("Это %0.0f%% от цены в прайс-листе.\n", percent);

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

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

Интервал:

Закладка:

Сделать


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

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




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


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


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

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