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

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

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
Н.С. Вагарина, Н.И. Мельникова
СБОРНИК ТЕСТОВЫХ ВОПРОСОВ
И ЗАДАЧ ПО ЯЗЫКУ
ПРОГРАММИРОВАНИЯ СИ
В двух частях
ЧАСТЬ 1
Практикум
Москва
Ай Пи Ар Медиа
2022
УДК 004.43 ББК 32.973.2 В12
Авторы:
Вагарина Н.С. — канд. физ.-мат. наук, доц., доц. кафедры
информационно-коммуникационных систем и программной инженерии
Саратовского государственного технического университета имени Гагарина Ю.А.;
Мельникова Н.И. д-р социол. наук, доц., проф. кафедры
социальной информатики Саратовского национального исследовательского
государственного университета имени Н.Г. Чернышевского
Рецензенты:
Терехова Н.Г. — заместитель директора — главный технолог
филиала ФГБУ «ФКП Росреестра» по Саратовской области;
Хвалин А.Л. — д-р техн. наук, проф. кафедры общей, теоретической
и компьютерной физики Саратовского национального исследовательского
государственного университета им. Н.Г. Чернышевского
Вагарина, Наталия Сергеевна.
В12 Сборник тестовых вопросов и задач по языку программирования Си.
В 2 частях. Ч. 1 : практикум / Н.С. Вагарина, Н.И. Мельникова. — Москва : Ай Пи Ар Медиа, 2022. — 143 с. — Текст : электронный.
ISBN 978-5-4497-2077-1 (ч. 1) ISBN 978-5-4497-2132-7
В практикуме содержатся тестовые вопросы и задания по 12 темам, охват ываю­щим основы программирования на языке Си. Каждая тема включает 30 тестовых во­просов и заданий. Целью практикума является подготовка студентов к проверке знаний основ структурного программирования на языке программирования Си. Материалы дан-
ного сборника могут использоваться преподавателями для формирования промежуточных
и итоговых тестов, а также студентами и всеми заинтересованными в изучении п ро-
граммирования для проверки знаний и самоконтроля.
Подготовлен в соответствии с требованиями Федерального государственного об-
разовательного стандарта высшего образования.
Предназначен для студентов, обучающихся по укрупненной группе направлений
подготовки «Информатика и вычислительная техника», изучающих язык Си в рамках дисциплины «Программирование», а также изучающих основы программирования в курсе «Информационные технологии и программирование». Практикум будет полезен
для всех заинтересованных в изучении программирования с нуля.
Учебное электронное издание
ISBN 978-5-4497-2077-1 © Вагарина Н.С., Мельникова Н.И., 2022
Учебное издание
Вагарина Наталия Сергеевна
Мельникова Нина Ивановна
Редактор Ю.Ю. Желтова
Технический редактор, компьютерная верстка Е.О. Зуева
Корректор Е.В. Савенкова
Обложка Я.А. Кирсанов, С.С. Сизиумова, фотобанк «Лори»
Подписано к использованию 13.02.2022. Объем данных 6 Мб.
ООО Компания «Ай Пи Ар Медиа»
8 800 555 22 35 (бесплатный звонок по России)
E-mail: sale@iprmedia.ru
4
ОГЛАВЛЕНИЕ
ТЕМА 1. БАЗОВЫЕ ПОНЯТИЯ ЯЗЫКА СИ ................................................. 5
Ответы к вопросам и задачам темы 1 .................................................................. 11
ТЕМА 2. ТИПЫ ДАННЫХ ЯЗЫКА СИ ......................................................... 16
Ответы к вопросам и задачам темы 2 .................................................................. 22
ТЕМА 3. ФОРМАТНЫЙ ВВОД-ВЫВОД ....................................................... 26
Ответы к вопросам и задачам темы 3 .................................................................. 33
ТЕМА 4. ОПЕРАЦИИ И ВЫРАЖЕНИЯ........................................................ 38
Ответы к вопросам и задачам темы 4 .................................................................. 45
ТЕМА 5. УПРАВЛЯЮЩИЕ СТРУКТУРЫ .................................................. 49
Ответы к вопросам и задачам темы 5 .................................................................. 55
ТЕМА 6. КЛАССЫ ПАМЯТИ ПЕРЕМЕННЫХ ЯЗЫКА СИ .................... 60
Ответы к вопросам и задачам темы 6 .................................................................. 66
ТЕМА 7. МАССИВЫ .......................................................................................... 72
Ответы к вопросам и задачам темы 7 .................................................................. 77
ТЕМА 8. СТРОКИ ............................................................................................... 83
Ответы к вопросам и задачам темы 8 .................................................................. 91
ТЕМА 9. АДРЕСА И УКАЗАТЕЛИ ................................................................. 96
Ответы к вопросам и задачам темы 9 ................................................................ 103
ТЕМА 10. УКАЗАТЕЛИ И МНОГОМЕРНЫЕ МАССИВЫ .................... 108
Ответы к вопросам и задачам темы 10 .............................................................. 115
ТЕМА 11. СТРУКТУРЫ И ОБЪЕДИНЕНИЯ ............................................. 119
Ответы к вопросам и задачам темы 11 .............................................................. 128
ТЕМА 12. РАБОТА С ФАЙЛАМИ ................................................................ 132
Ответы к вопросам и задачам темы 12 .............................................................. 137
5
ТЕМА 1. БАЗОВЫЕ ПОНЯТИЯ ЯЗЫКА СИ
1. Какой язык программирования был предшественником языка Си?
BCPL;
B;
PL/1;
Ada.
2. Кто является автором языка Си?
Ритчи Деннис;
Вирт Никлаус;
Дейкстра Эдсгер.
3. Для какой операционной системы первоначально создавался
язык Си?
DOS;
Unix;
T.H.E.
4. Укажите правильные характеристики языка Си:
стандартное расширение для текстовых файлов исходного модуля —
это «.c»;
исходный модуль может включать только один текстовый файл;
объем программы не превышает несколько тысяч строк;
первоначально предназначен для разработки системного программного
обеспечения;
определен стандартами ANSI и ISO;
статически типизируемый;
компилируемый.
5. К какому типу относится язык программирования, в котором дей-
ствия над данными выражаются в терминах последовательностей команд?
логический язык программирования;
процедурный язык программирования;
функциональный язык программирования.
6
6. Выверите правильное высказывание:
языки программирования являются основой алгоритмических языков;
алгоритмические языки являются основой языков программирования.
7. Как называется язык для однозначной записи алгоритмов?
язык программирования;
алгоритмический язык.
8. Как называется формальный язык для описания данных и алго-
ритма и их обработки на компьютере?
язык программирования;
алгоритмический язык.
9. Какого типа языки используются для однозначной записи алгоритмов
и программ?
неформальные;
формальные.
10. Алфавит языка — это:
минимальные конструкции языка, имеющие самостоятельный смысл;
основные неделимые знаки, с помощью которых пишутся все тексты
на языке;
лексемы, представляющие изображение фиксированного числового (це-
лого или вещественного), строкового или символьного значения;
имена программных объектов.
11. Что из перечисленного является лексемами языка Си?
константы;
пробельные символы;
знаки операций;
идентификаторы;
выражения;
ключевые слова.
12. Чем является в языке Си «;» (точка с запятой)?
разделителем операторов;
терминатором оператора.
7
13. Ключевые слова — это:
специальные выражения языка;
идентификаторы, смысл которых зафиксирован правилами языка програм-
мирования;
символы языка, имеющие специальное значение.
14. Что из перечисленного является ключевыми словами языка Си?
auto;
float;
forall;
return;
proc;
void.
15. Знак операции — это:
один или более символов языка, определяющих действия над пере-
менными;
один или более символов языка, определяющих действия над операндами;
идентификаторы, определяющие действия над операндами;
идентификаторы, зарезервированные в языке для специального исполь-
зования.
16. Что охватывается термином Whitespace в языке Си?
пробелы;
ключевые слова;
табуляция;
символы новой строки;
выражения;
комментарии.
17. Допускаются ли вложенные комментарии в языке Си?
да;
нет.
18. Первый символ в идентификаторе может быть целым числом?
да;
нет.
8
19. Какое значение примет переменная в результате выполнения вы-
ражения int a = 10 + 7.428?
ошибка компиляции;
14;
17.428;
10.
20. Укажите правильное высказывание об изменении значения кон-
станты:
нельзя изменять значение константы в процессе выполнения программы;
можно изменять значение константы в процессе выполнения программы.
21. Установите соответствие межу константой и ее типом:
“Hello, World”
Вещественная
\t
Строковая
0.2E-3
Символьная
0хА
Целая
22. Укажите правильные высказывания:
в состав операторов могут входить лексемы;
символы строятся из лексем;
идентификатор — это лексема;
лексемы языка строятся из символов.
23. Укажите основные четыре составляющие языка программирования:
символы, операции, идентификаторы, операторы;
алфавит, лексемы, ключевые слова, операторы;
символы лексемы, выражения операторы;
алфавит, лексемы, инструкции, операторы.
24. Установите соответствие между понятием и его определением:
Препроцессор
Правило (например, формула) для вычисления нового значения
Выражение
Один или более символов, определяющих действия над операндами
Escape-последовательность
Обозначение переменных, функций или лю­бого другого определяемого пользователем элемента
Знак операции
Основные неделимые знаки, с помощью которых пишутся все тексты на языке
9
Константа
Программа для предварительной обработки текста программы, является часть компилятора языка Си
Whitespace
Термин, используемый в Cи для описания пробелов, табуляции, символов новой строки и комментариев
Ключевое слово
Язык программирования, в котором действия над данными выражаются в терминах последовательностей команд
Идентификатор Си
Формальный язык для однозначной записи алгоритмов
Лексема
Языковая конструкция, по соглашению представляющая элементарную синтаксическую единицу
Алфавит языка
Формальный язык для описания данных (информации) и алгоритма (программы), и их обработки на компьютере
Процедурный язык программирования
Идентификатор, смысл которого зафиксирован правилами языка программирования и который используется для распознавания выражений программы
Язык программирования
Последовательность символов, начинающаяся с обратной косой черты (backslash)
Алгоритмический язык
Лексема, представляющая изображение фиксированного числового (целого или вещественного), строкового или символьного значения
25. Установите соответствие между названием и функциональным зна-
чением основных заголовочных файлов в языке Си:
math.h
Функции для работы со строками
stdio.h
Функции для выделения и освобождения памяти
alloc.h, stdlib.h
Функции для работы с графикой и др.
graphics.h
Функции ввода-вывода для стандартных файлов
conio.h
Функции для работы с терминалом в текстовом режиме
string.h, stdlib.h
Функции проверки и преобразования
символов
сtype.h
Математические функции
10
26. Какой символ используется в программах на языке Си для обо-
значения команд препроцессора?
• !
#
~
• ;
27. Какая функция обязательно должна быть в каждой программе?
void;
main;
sum;
ни одна из них.
28. Установите соответствие между строками программы на языке Си
и названием части программы:
#include <stdio.h
Основная функция
int main()
Комментарий
{
Вывод сообщения на экран монитора
/*Моя первая программа на Си*/
Начало тела функции
printf(“Hello, world!\n”)
Завершение тела функции
return 0;
Команда препроцессора
}
Завершение основной функции
и возврат значения 0
29. Какое значение примет переменная x? #include <stdio.h>
void main() { int x = 5 * 9 / 3 + 9; }
4;
24;
3.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]