Учебно-методический комплекс учебной дисциплины сдм. 02 «программирование» подготовки магистров по направлению 050200 «Физико-математическое образование» магистерская программа «Информатика в образовании»
Вид материала | Учебно-методический комплекс |
СодержаниеИтоговая аттестация |
- Учебно-методический комплекс учебной дисциплины ен. В. 01 по выбору (информатика) «Программирование, 553.96kb.
- Учебно- методический комплекс учебной дисциплины дпп. 04"Теоретические основы информатики", 530.12kb.
- Программа вступительных испытаний для лиц, поступающих в магистратуру на направление, 220.49kb.
- Программа вступительного экзамена в магистратуру по направлению 050200 «Физико-математическое, 500.22kb.
- Магистерская программа 540204м информатика в образовании Разработчики программы, 115.3kb.
- Магистерская программа «Языковое образование (русский язык)» умк принят в фонд учебно-методического, 541.81kb.
- Рабочая программа учебной дисциплины сдм. 01. 02 Виды обеспечений сапр для подготовки, 191.35kb.
- Учебно-методический комплекс учебной дисциплины сдм. 02 Валютная политика государства, 3226.07kb.
- Учебно-методический комплекс учебной дисциплины сдм. 03 Анализ финансовой отчетности, 3496.13kb.
- Учебно-методический комплекс по специальностям 050202. 65 и 050200. 62 «Информатика», 457.74kb.
Т Е С Т
1. Какие основные типы данных известны вам в языке С++?
- стековые, регистровые;
- константы, переменные;
- char, int, float,double;
- символьные, строковые, целые.
2. В каком порядке происходит выравнивание типов при смешивании операндов?
- char, short, int, float, double;
- short, double, float, char, int;
- double, char, int, short, float;
- char, int, short, double, float.
3. Каков диапазон значений у типов: float, int, double?
- -256-+256, 0-65536, -65536-+65536;
- -+-3.4Е+38-3.4Е-38, -32768-32767, -128-+127;
- -32768-32767, 0-65536, -128-+127;
- -3.4E+308-3.4E+308, 0-65535, 0-+255.
4. В чем разница между понятиями «тип данных» и «модификатор данных»?
- Модификатор никогда не пишется явно;
- тип определяет знак, модификатор – размер;
- тип определяет размер, модификатор – знак;
- модификатор можно объявить, тип – нет.
5. Где в языке С++ должны объявляться локальные переменные?
- только после инструкций тела функции;
- в любом месте локальной (внешней) функции;
- только в объявлении прототипа функций;
- в любом месте программы.
6. В каком порядке будут выполняться операции: () + && % ?
- () ? % && +
- () % + ? &&
- && ? + () %
- ? % () && +
7. Что производит с переменной i при операции i++?
- заносит значение переменной i в первые два регистра;
- увеличивает значение сегмента памяти на 2;
- прибавляет единицу после участия i в другие операции;
- прибавляет единицу перед участия i в другие операции.
8. Какие значения будут присвоены X(1) и Y(0) после операции:

-
;
-
;
-
;
-
.
9. В какой из данных строк содержатся только логические операции?
- * -> & >= <= | / ?=
- += -= *= /= >= <= > < =
- && > >= < <= = = || ! !=
- += && || >= > <= < != &
10. Чем определяется порядок выполнения операций в выражении?
- объемом оперативной памяти и приоритетом;
- только расставленными круглыми скобками;
- круглыми скобками и приоритетом операций;
- приоритетом и размером выражения.
11. Процесс перевода инструкций языка С++ в машинный код называется ________________________.
12. Каким типом данных должны быть объявлены переменные, которые могут хранить вещественную часть:
- float;
- double;
- int;
- char.
13. Какой из следующих операторов выводит символ новой строки и символ табуляции?
- cout << enl << “\t”;
- cout << enl << “\n”;
- cout << enl << “\f”;
- cout << enl << “\s”;
14. Командой в С++ для печати на экране строки символов, является:
- cout >>;
- cin <<;
- cout <<;
- cin >>.
15. Командой в С++ для чтения вводимой информации из стандартного потока ввода, является:
- cout >>;
- cin <<;
- cout <<;
- cin >>.
16. Чем линейные вычислительные процессы отличаются от циклических?
- тем, что они повторяются много раз;
- тем, что они выполняются по порядку следования в программе;
- тем, что они идут гораздо медленнее;
- тем, что они выполняются только один раз.
17. Каковы основные свойства алгоритма?
- непрерывность, идеальность, знаковость;
- точность, дискретность, определенность, определяемость;
- коммутативность, инициализируемость, массовость, определенность;
- всеобщность, дискретность, результативность, определенность.
18. Какие операторы в С++ применяются для организации разветвляющихся вычислительных процессов?
- for, while, do while;
- continue, go to, switch;
- go to, break, continue, switch;
- for, go to, while, switch.
19. Какие операторы в С++ применяются для организации циклических вычислительных процессов?
- go to, break, continue, switch;
- for, while, do while;
- go to, for, do while;
- for, go to, while, switch.
20. В каком случае оправдано применение оператора GOTO?
- в случае написания разделительных программ;
- в случае входа внутрь вложенных циклов;
- в любом месте, где это удобно;
- в случае выхода из вложенных циклов.
21. Какие значения будут присвоены a[i] и i после выполнения выражения:

-
;
-
;
-
;
- это зависит от модели используемого компилятора.
22. Как в языке С++ объявить массив целого типа из 10 элементов?
- int a(10);
- int a[10];
- char b[10];
- float b(10).
23. Как в языке С++ представляются многомерные массивы?
- в виде совокупности многомерных ячеек в памяти;
- в виде последовательности символов в памяти;
- в виде совокупности регистров стека;
- в виде особого одномерного массива.
24. Чем характеризуется любой одномерный массив?
- аргументами и именем массива;
- числом элементов массива и параметрами;
- именем массива и числом элементов;
- именем массива и параметрами.
25. Почему в языке С++ выгодно динамическое представление массивов?
- так как увеличивается быстродействие компьютера;
- так как память никогда не используется зря;
- так как остается больше места для других данных;
- все приведенные ответы.
26. К чему может привести использование очень больших локальных массивов?
- вследствие записи по нулевому адресу будет испорчена оперативная память;
- откажется действовать компоновщик;
- вследствие переполнения стека программа завершится до начала выполнения;
- может произойти любое из указанных действий.
27. Почему нельзя передать двумерный массив функции, ожидающей указатель на указатель?
- потому что двумерный массив превращается в указатель на массив;
- потому что будет испорчена оперативная память;
- потому что возможны сбои в работе программы;
- потому что размер массива всегда больше размера указателя.
28. Что вычислит оператор sizeof при попытке определить с его помощью размер массива, который передан функции в качестве параметра?
- количество элементов в массиве;
- размер указателя на массив;
- размер массива указателей;
- размер массива указателей на указатель.
29. Что в языке С++ называется указателем?
- константа, определяемая в процессе работы;
- переменная, содержащая адрес другой переменной;
- заголовочная функция программы;
- определитель сегмента стека в оперативной памяти.
30. Что в языке С++ означает строка: void *t?
- константа void инициализирует тип t;
- константа void – указатель на переменную t;
- тип void инициализирует переменную t;
- тип void инициализирует константу t.
31. К чему в языке С++ может привести использование указателей?
- работающая программа зависнет;
- будет перегружена память компьютера;
- откажется действовать компилятор;
- может произойти любое из указанных действий.
32. Какое различие существует между именем массива и соответствующим указателем?
- имя массива – константа, указатель – переменная;
- указатель оперирует только с константами;
- имя массива занимает больший объем памяти;
- указатель занимает больший объем памяти.
33. В какой из строк объявляется переменная целого типа и ее адрес сохраняется в другой переменной?
-
;
-
;
-
;
-
.
34. Массив символов, обрабатываемая как единый модуль – это ________________.
35. Сопоставьте функции – члены класса string и их действия:
- char *strcpy (char *s1, const char *s2);
- char *strcat (char *s1, const char *s2);
- int strcmp (const char *s1, const char *s2);
- char *strok (char *s1, const char *s2);
- size_t strlen (const char *s).
- добавляет строку s2 к строке s1;
- определяет длину строки s.
- разбивает строку s1 на лексемы, содержащимися в строке s2;
- копирует строку s2 в массив символов s1;
- сравнивает строки s1 и s2.
36. Какая функция в С++ очищает экран?
- delscr();
- clrscr();
- clsscr();
- cleane().
37. В какой из строк аргументы функции main написаны правильно (выберите несколько вариантов)?
- (int argc, char *argv[], char *envp[]);
- (int argc, char argv[], char envp[]);
- (int argc, char *envp);
- (int argc, char *argv[]).
38. К чему может привести широкое использование функций в программе?
- значительно увеличивается длина исходного файла;
- размер исполняемого файла уменьшится;
- программа начнет работать гораздо быстрее;
- размер исполняемого файла увеличится.
39. Какая из 3-х функций:


- функции
;
- функции
;
- функции
;
- нельзя точно сказать.
40. Когда функция в языке С++ завершает свое выполнение?
- только при достижении оператора return;
- только при достижении оператора break;
- только при достижении завершающей фигурной скобки;
- в случаях а или в.
41. Функция, которая прямо или косвенно вызывает сама себя, называется ____________________________.
42. Повторный запуск рекурсивного механизма вызовов функции приводит:
- к нарастающим затратам процессорного времени и требуемого объема памяти;
- к отказу действия компилятора;
- к завершению программы до начала выполнения;
- к перезагрузке программы.
43. Совокупности типов данных, построенные с использованием данных других типов, называются _____________________.
44. Какие из перечисленных ниже утверждений неверны (выберите несколько вариантов)?
- компоненты структуры могут быть различных типов;
- компоненты структуры должны быть различных типов;
- структура представляет собой совокупность данных;
- компоненты структуры имеют атрибут private по умолчанию.
45. Какие из перечисленных ниже утверждений неверны?
- класс представляет собой набор переменных;
- компоненты класса имеют атрибут public по умолчанию;
- компоненты класса должны быть различных типов;
- в языке С++ недопустима вложенность классов;
- описание класса не может производиться в другом классе;
- все утверждения верны.
46. Какое ключевое слово начинает определение структуры?
- class {};
- struct {};
- main {};
- void {}.
47. Функция определенная внутри класса, называется ________________.
48. Какое ключевое слово начинает определение класса?
- class {};
- struct {};
- void {}.
- main {};
49. Препятствиями к созданию новых типов данных с помощью struct являются:
- возможность существования данных, не имеющих начальных значений;
- возможность существования данных с неправильными начальными значениями;
- необходимость изменения всех программ, использующих struct, при изменении реализации struct;
- отсутствие средств защиты, гарантирующих, что данные не содержат несогласованных значений;
- все утверждения верны.
50. Каково различие между оператором точка и оператором доступа к члену класса по имени класса?
- оператор точка именуется оператором доступа к члену класса по имени класса, а оператор доступа – оператором прямого доступа к члену класса;
- оператор точка именуется оператором прямого доступа к члену класса, а оператор доступа – оператором доступа к члену класса по имени класса;
- оператор точка именуется оператором закрытого доступа к члену класса, а оператор доступа – оператором доступа к члену класса по имени класса;
- различий нет.
Правильные ответы:
- в
- а
- б
- в
- б
- б
- в
- б
- в
- в
- компиляцией
- б
- а
- в
- г
- б
- г
- в
- б
- г
- г
- б
- б
- в
- г
- в
- а
- б
- б
- в
- г
- а
- б
- строка
- 1-г, 2-а, 3-д, 4-в, 5-б
- б
- а, г
- б
- г
- г
- рекурсией
- а
- структуры
- б, г
- е
- б
- членом
- а
- д
- б
Шкала оценки:
Кол-во правильных ответов | Оценка |
52 | отлично |
41 – 51 | хорошо |
21 – 40 | удовлетворительно |
до 20 | не удовлетворительно |
ИТОГОВАЯ АТТЕСТАЦИЯ
ВОПРОСЫ (к экзамену)
- История и назначение языка Си++.
- Структура программы на языке С++. Примеры. Этапы создания исполняемой программы.
- Состав языка С++. Константы и переменные С++.
- Типы данных в С++.
- Выражения. Знаки операций.
- Сводка операций: скобки, порядок вычислений, инкремент и декремент, преобразование типа.
- Основные операторы С++ (присваивание, составные, выбора, циклов, перехода). Синтаксис, семантика, примеры.
- Этапы решения задачи. Виды ошибок. Тестирование.
- Массивы (определение, инициализация, способы перебора).
- Сортировка массивов (простой обмен, простое включение, простой выбор).
- Поиск в одномерных массивах (дихотомический и линейный).
- Указатели. Операции с указателями. Примеры.
- Динамические переменные. Операции new и delete. Примеры.
- Ссылки. Примеры.
- Одномерные массивы и указатели. Примеры.
- Многомерные массивы и указатели. Примеры.
- Динамические массивы. Примеры.
- Символьная информация и строки. Функции для работы со строками (библиотечный файл string.h).
- Функции в С++. Рекурсия. Примеры.
- Прототип функции. Библиотечные файлы. Директива препроцессора #include.
- Передача одномерных массивов в функции. Примеры.
- Передача многомерных массивов в функции. Примеры.
- Передача строк в функции. Примеры.
- Функции с умалчиваемыми параметрами. Примеры.
- Подставляемые функции. Примеры.
- Функции с переменным числом параметров. Примеры.
- Перегрузка функции. Шаблоны функций. Примеры.
- Указатели на функции. Примеры.
- Ссылки на функции. Примеры.
- Типы данных, определяемые пользователем (переименование типов, перечисление, структуры, объединения). Примеры.
- Структуры. Определение, инициализация, присваивание структур, доступ к элементам структур, указатели на структуры, битовые поля структур.
- Динамические структуры данных (однонаправленные и двунаправленные списки).
- Создание списка, печать, удаление, добавление элементов (на примере однонаправленных и двунаправленных списков).
- Классы и члены: функции-члены, классы, ссылка на себя, инициализация, удаление, подстановка.
- Классы: друзья, уточнение имени члена, вложенные классы, статические члены, указатели на члены, структуры и объединения.
- Конструкторы и деструкторы, локальные переменные.
- Объекты класса как члены, массивы объектов класса, небольшие объекты.
- Потоковый ввод-вывод в С++. Открытие и закрытие потока. Стандартные потоки ввода-вывода.
- Прямой доступ к файлам.
- Создание бинарных и текстовых файлов, удаление, добавление, корректировка элементов, печать файлов.
Список задач, выносящихся на итоговую аттестацию
- Определить, попадет ли точка с координатами (х;у) в указанную область.
- Дана последовательность целых чисел из n элементов. Найти:
a) среднее арифметическое;
b) максимальное значение;
- Дана последовательность целых чисел из n элементов. Найти:
- количество отрицательных элементов;
- номер минимального элемента;
- количество отрицательных элементов;
- Дана последовательность целых чисел из n элементов. Найти:
- количество четных чисел;
- минимальный из четных элементов этой последовательности.
- количество четных чисел;
- Дана последовательность целых чисел, за которой следует 0. Найти:
- среднее арифметическое;
- (максимальное значение;
- среднее арифметическое;
- Дана последовательность целых чисел, за которой следует 0. Найти:
- количество отрицательных элементов;
- номер минимального элемента;
- количество отрицательных элементов;
- Найти сумму чисел Фибоначчи, меньших заданного числа Q.
- Напечатать N простых чисел.
- Найти сумму целых положительных нечетных чисел, меньших 200.
- Напишите программу, которая проверяет принадлежность числа диапазону от 0 до 100 включительно.
- Напишите программу, которая считывает переменную и выводит ее куб.
- Дан массив целых чисел. Найти: а)среднее арифметическое; б) максимальное значение;
- Дан массив целых чисел. Найти:
- количество четных чисел;
- минимальный из четных элементов этого массива.
- количество четных чисел;
- Дан массив целых чисел. Перевернуть массив.
- Дан массив целых чисел. Поменять местами пары элементов в массиве: 1 и 2, 3 и 4, 5 и 6 и т. д.
- Циклически сдвинуть массив на k элементов влево (вправо).
- Напишите программу, которая вычисляет факториалы, используя рекурсивную функцию.
- Определить какое слово встречается в строке чаще всего.
- Дана строка символов, состоящая из слов, слова разделены между собой пробелами. Удалить из строки все слова, начинающиеся с цифры.
- Преобразовать строку таким образом, чтобы все слова в ней были напечатаны наоборот.
- Преобразовать строку так, чтобы все буквы в ней были отсортированы по возрастанию.
- Напечатать самое длинное и самое короткое слово в этой строке.
- Получите от пользователя три порции информации: имя собаки, ее породу и возраст. Затем напечатайте предложение, используещее эту информацию.
- Сформировать динамический массив строк. Удалить из него строку с заданным номером.
- Дан массив int *a. Удалить из массива все элементы, совпадающие с первым элементом, используя динамическое выделение памяти.
- Найти количество цифр в строке символов, используя функции.
- Удалить из однонаправленного (двунаправленного) списка элемент с заданным номером (ключом).
- Добавить в однонаправленный (двунаправленный) список элемент с заданным номером.
- Создать структуру «Книга»:
- название;
- автор;
- год издания;
- количество страниц.
Удалить 3 элемента из начала файла, добавить элемент перед элементом с указанным названием.
- Удалить из бинарного файла, в котором записаны целые числа все четные элементы.
- Добавить в бинарный файл, в который записаны элементы типа struct Student {char name[20];int age;}; k элементов после элемента с заданной фамилией.
- Удалить из текстового файла все четные строки.
- Добавить порядковый номер в каждую строку текстового файла.
- В текстовом файле заменить все строки, начинающиеся с буквы «f» на строки, начинающиеся с буквы «a».
Примерные темы рефератов
- История С++.
- С++ – язык объектно-ориентированного программирования.
- Особенности языка С++.
- Дружественные функции и классы С++.
- Использование виртуальных функций и полиморфизм С++.
- Работа с файлами в языке С++.
- Многомерные массивы в С++.
- Конструкторы и деструкторы в С++.
- Классы контейнеры и итераторы.
- Композиция и наследование С++.
- Исключения – что это такое?
- Потоки ввода-вывода.
- Стандартные манипуляторы ввода-вывода.
- Проектирование библиотек.