Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Сборник тестовых вопросов и задач по языку программирования Си. В 2 частях. Ч. 1. Практикум

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
21
26. Какой тип данных наиболее экономичен для хранения числа 65 000
в 32-битной системе?
unsigned short int;
short int;
int;
long int;
double.
27. Каковы соответственно диапазоны signed char и unsigned char?
–128 … +127, 0 … 255;
0 … 255, –128 … +127;
–128 … –1, 0 … +127;
0 … +127, –128 … –1.
28. Какова длина в байтах типов данных float, double и long double?
4, 8, 16;
4, 8, 10;
2, 4, 6;
4, 6, 8.
29. Укажите правильные целочисленные литералы:
212; 215u; 0xFeeL; 078; 032UU.
30. Какой тип припишется по умолчанию именованной константе
F=537?
unsigned short int;
short int;
int;
long int;
double.
22
ОТВЕТЫ К ВОПРОСАМ И ЗАДАЧАМ ТЕМЫ 2
1. Установите соответствие между константами и идентификаторами
и их характеристикой:
‘A’ — символьная константа;
“abc” — строковая константа;
• 23 — целая константа;
• Abc корректный идентификатор;
PTR неверный идентификатор;
110.85 вещественное число.
2. Установите соответствие между константами и идентификаторами
и их характеристикой:
$abc неверный идентификатор;
_А1 — корректный идентификатор;
1.98765 —значение типа double;
• abc корректный идентификатор;
• ABC — корректный идентификатор;
• 10.34 — вещественное число;
• 8 — целая константа.
3. Какой тип данных используется для указания отсутствия значения
в Си?
void.
4. По сравнению с переменной какого типа переменная типа float за-
нимает в памяти объем в два раза?
double.
5. В переменную какого типа может быть записано число 10?
int.
6. Какому типу соответствует константа 140L?
long.
7. Какому типу соответствует константа 140?
int.
23
8. Какие ключевые слова могут использоваться при описании данных
вещественного типа?
long;
double;
float.
9. Какие ключевые слова могут использоваться при описании данных
целого типа?
unsigned;
signed;
long;
short;
int.
10. Какое из следующих высказываний неверно?
левый в фигурных скобках идентификатор перечислимой константы все-
гда имеет значение 0.
11. Укажите допустимые значения констант:
все допустимы.
12. Какие перечисления описаны неверно согласно синтаксису Си?
enum {one=1, two, three, four};
enum digit {one=1, one=2, two, three}.
13. Какое из определений перечислимого типа является правильным?
перечислимый тип описывает целые константы, которым приписаны уни-
кальные и удобные для использования имена.
14. Что такое переменная?
переменная — это именованная область памяти компьютера, выделяе-
мая для хранения конкретных данных, значение которых в общем случае может
изменяться в ходе выполнения программы.
24
15. Какое из следующих высказываний неверно?
каждая переменная должна быть инициализирована при описании.
16. Какое из следующих высказываний неверно?
в операторе описания переменной обязательным является только иден-
тификатор.
17. Какое из следующих высказываний неверно? Тип переменной
определяет:
операции и функции, которые можно применять к переменной.
18. К какому типу данных относится массив?
массив относится к производным типам данных.
19. Как называются сущности языка Си, значения которых могут быть
изменены?
переменные это объекты данных, значения которых могут быть из-
менены.
константы имеют фиксированное значение;
токены — это слова, которые идентифицируются компилятором.
20. Что является правильным в отношении размера типов данных?
char < int < double. char имеет меньше байт, чем int, а int имеет меньше
байт, чем double.
21. Какой из указанных типов данных имеет переменный размер?
struct. Размер структуры зависит от ее полей, она имеет переменный
размер.
22. Что такое short int в программировании на языке Си?
• short является квалификатором, а int — основным типом данных;
short, long, signed и unsigned — это квалификаторы, используемые перед
основными типами данных для внесения в них некоторых изменений.
23. Укажите ошибочную последовательность ключевых слов для
языка Си:
char, extern, intern, return. intern не является ключевым словом. Остальные последовательности являются последовательностями ключевых
слов языка Си.
25
24. Какое из следующих высказываний относительно имен переменных
в языке Си является верным?
имена переменных не могут начинаться с цифры.
25. Какие типы целых допускаются в языке Си?
все вышеперечисленное. short, int и long используются для хранения це-
лочисленных типов данных.
26. Какой тип данных наиболее экономичен для хранения числа 65 000
в 32-битной системе?
unsigned short int. 65 000 входит в диапазон 16-битных коротких целых
(0…65 535), которые занимают меньше всего памяти.
27. Каковы соответственно диапазоны signed char и unsigned char?
–128 … +127, 0 … 255.
28. Какова длина в байтах типов данных float, double и long double?
4, 8, 16.
29. Укажите правильные целочисленные литералы:
212,215u, 0xFeeL.
• 078 неправильно, 8 не является восьмеричной цифрой,
• 032UU — неправильно, поскольку нельзя повторять один и тот же
суффикс.
30. Какой тип припишется по умолчанию именованной константе
F=537?
int. Если не указывается тип именованной константы, то по умолчанию
приписывается int.
26
ТЕМА 3. ФОРМАТНЫЙ ВВОД-ВЫВОД
1. Установите соответствие между стандартными потоками и их обо-
значениями:
Стандартный поток ввода
stderr
Стандартный поток вывода
stdaux
Стандартный поток ошибок
stdin
Стандартный последовательный порт
stdprn
Стандартное устройство печати
stdout
2. Укажите функциии форматного ввода/вывода:
puts() и gets();
printf() и scanf();
getchar() и putchar();
getch().
3. В каком заголовочном файле определена функция форматного
ввода-вывода?
stdlib. h;
conio.h;
stdio. h;
stdarg. h.
4. Выберите правильное значение i из приведенных вариантов
i=scanf("%d %d", &a, &b):
1;
2;
3;
значение не присвоено.
5. Что определяет форму, в которой выводится на экран значение пе-
ременной?
текст;
форматный спецификатор;
сама переменная;
другое.
27
6. Что используется для обозначения спецификаторов в функциях
форматного ввода-вывода?
*;
%;
[];
другое.
7. Установите соответствие между вызовом функции scanf() и типом
ошибки или ее отсутствием для следующих типов данных:
char ch; int a, b, c; float fl;
scanf ( "%d%d", &a );
Ошибка отсутствует
scanf ( "%d%d", &a, &b, &c);
Не заданы переменные
для всех вводимых чисел
scanf ( "%f%f", &a, &b );
Не задан формат ввода
для переменной c
scanf("%с%d%f",&ch, &dc, &fl);
Нельзя вводить целые переменные
по вещественному формату
8. С каким типом аргументов работает функция scanf()?
переменные;
константы;
выражения;
адреса переменных.
9. Что означает форматный спецификатор %-+7.2f для функции printf()?
выравнивание выводимого значения по левому краю;
выводимое значение как целое;
выводимое значение как действительное;
ширина поля вывода равна 7;
ширина поля вывода равна 9;
количество цифр после запятой равно 0;
количество шифр после запятой равно 5;
количество цифр после запятой равно 2.
28
10. Что выведет данная функция? #include <stdio.h>
int main(void) { int n; scanf("%d", n); printf("%d", n); return 0; }
введенное целое значение;
ничего не выведет;
ошибку доступа к памяти.
11. Используя printf(), выведите на экран текст «Здравствуйте!» со сле-
дующим за ним переходом на новую строку.
12. Используя printf(), выведите на экран значение вещественной пе-
ременной f1 со следующим за ним переходом на новую строку.
13. Используя printf(), выведите на экран значение вещественной пе-
ременной f2 c двумя знаками после запятой.
14. Используя printf(), выведите на экран значение вещественной пе-
ременной f3 в экспоненциальной форме.
15. Используя printf(), выведите на экран значение целой переменной
d1 в 5 позициях с ведущими нулями.
16. Что будет выведено в результате выполнения следующей про-
граммы?
#include <stdio.h> int main(void) { int n; char arr[100]; printf("%d", scanf("%s", arr)); return 0; }
29
1;
2;
10;
strlen(arr).
17. Что будет выведено в результате выполнения следующей про-
граммы?
#include <stdio.h> int main(void) { printf("\"); return 0; }
\
\"
• "
ошибка компиляции.
18. Переменная price вещественного типа используется для хранения
цены в рублях. Какой из вариантов printf() корректно отобразит ее значение
в стандартном денежном формате (например, 5.45 руб.)?
printf("Price: %d руб. ", price);
printf("Price: %f руб. ", price);
printf(Price: %f руб., price);
printf("Price: %f ", руб., price);
19. Какой фрагмент кода не содержит ошибок?
char answer, strCourseName[100]; printf("Какую лекцию вы изучаете?\n"); scanf("%s", strCourseName); printf("Есть ли у вас вопросы по лекции \"%s\" (y/n)?\n", strCourseName); scanf("%s", answer);
char answer; char strLecName[50] = "Переменные и базовые типы данных языка С"; printf("Знакома ли вам тема лекции "%s" (y/n)?\n", strLecName); scanf("%s", &answer);
30
char answer, strCourseName[100]; printf("Какую лекцию вы изучаете?\n "); scanf("%s", strCourseName); printf("Есть ли у вас вопросы по лекции\"%s\" (y/n)?\n", strCourseName); scanf("%с", &answer);
20. Что будет выведено в результате выполнения следующей про-
граммы?
#include <stdio.h> int main(void) { printf("%d Hello %d"); return 0; }
1 Hello 1;
2 Hello 2;
«мусорное значение» Hello «мусорное значение»;
ничего из перечисленного.
21. Что будет выведено в результате выполнения следующей про-
граммы?
int main(void) { printf("%f Hello %f"); return 0; }
1.000000 Hello 1.000000;
0.000000 Hello 0 .000000;
«мусорное значение» Hello «мусорное значение»;
ничего из перечисленного.
22. Что будет выведено в результате выполнения следующей про-
граммы?
int main(void) { printf("%s Hello %s"); return 0; }
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]