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

ПЯВУ

.doc
Скачиваний:
11
Добавлен:
05.06.2015
Размер:
38.91 Кб
Скачать

Программирование на языке высокого уровня. Вопросы к экзамену. МПиТК. Весна 2015

1. Языки программирования. Классификация. Понятие о компиляторах и интерпретаторах.

2. Основные этапы процесса программирования.

3. Структура программы на языке С.

4. Правила оформления кода и комментариев в программах на языках C и С++.

5. Алфавит языка C.

6. Основные типы данных языка С.

7. Правила задания констант в программах на языке С.

8. Директива препроцессора #include.

9. Выражения и операции в языке C. Вещественные и строковые выражения.

10. Автоматическое и явное преобразование типов в выражениях.

11. Понятие переменной. Объявление, инициализация и использование переменных в языке C.

12. Локальные и глобальные переменные.

13. Классы памяти (extern, auto, static, register). Модификаторы const и volatile.

14. Приоритет операций. Унарные, бинарные и тернарная операции.

15. Арифметические операции.

16. Операция запятая.

17. Операции инкремента и декремента.

18. Операции присваивания и присваивания с модификацией. Множественные присваивания.

19. Битовые операции.

20. Логические операции.

21. Операции отношения.

22. Оператор if.

23. Тернарный оператор.

24. Оператор switch.

25. Цикл while.

26. Цикл do-while.

27. Цикл for.

28. Операторы break и continue.

29. Оператор goto.

30. Прерывание вложенных циклов.

31. Указатели в языке C. Правила использования.

32. Массивы. Правила использования массивов и обращения к элементам.

33. Правили определения и инициализации массивов.

34. Размер и размерность массива. Примеры.

35. Массивы массивов и многомерные массивы. Отличия и сходства.

36. Массивы указателей и указатели на массивы.

37. Ссылки. Отличия ссылок и указателей.

38. Строки и символы в языке C.

39. Функции для работы со строками.

40. Работа с динамической памятью в языке C (malloc, calloc, realloc, free).

41. Типы памяти (статическая память, стек, динамическая память).

42. Тип void *.

43. Функции в языке C. Объявление и определение функции.

44. Прототип функции.

45. Вызов функций. Примеры.

46. Возврат значений из функции. Оператор return.

47. Передача массивов и указателей в функцию.

48. Рекурсия.

49. Глубина рекурсии. Хвостовая рекурсия.

50. Задание аргументам функции значений по умолчанию. Перегрузка функций.

51. Функция main. Параметры функции main.

52. Указатель на функцию.

53. Передача указателя на функцию как аргумента. Возврат указателя на функцию как значения.

54. Спецификатор inline.

55. Оператор typedef.

56. Перечисления. Оператор enum.

57. Структуры в языке С. Оператор struct.

58. Доступ к полям структуры по значению и по указателю. Операторы . и -> .

59. Инициализация объекта структуры в языке C.

60. Вложенные и внутренние структуры.

61. Битовые поля.

62. Объединения. Оператор union.

63. Компиляция и компоновка программы. Многомодульное программирования.

64. Межмодульные переменные. Спецификатор extern.

65. Межмодульные функции.

66. Внешняя и внутренняя линковка.

67. Препроцессор языка С. Принципы работы.

68. Макросы языка C. Директивы #define и #undef

69. Условная компиляция. Директивы #if, #else, #elif, #endif.

70. Препроцессор языка С. Операции ##, #, \.

71. Ввод-вывод в языке C. Стандартные потоки stdin, stdout, stderr.

72. Заголовочный файл stdio.h. Основные функции.

73. Функции printf и scanf. Модификаторы в выражениях ввода-вывода. Альтернативы.

74. Работа с файлами в языке C. Режимы работы.

75. Проверка конца файла. Особенности работы функции feof. Примеры.

76. Закрытие файла. Функция fclose.

77. Бинарные и текстовые файлы. Основные отличия.

78. Стандартная библиотека языка C. Основные модули и возможности.

79. Заголовочный файл stdlib.h.

80. Заголовочные файлы setjmp.h, stdarg.h, time.h.

81. Основные принципы работы с динамическими односвязными списками.

82. Задача генерации динамического односвязного списка.

83. Задача удаления динамического односвязного списка.

84. Задачи вставки и удаления элементов при работе с динамическими списками.

85. Итерационный и рекурсивный подходы при работы с динамическими списками.

86. Задача переворота динамического списка.

87. Отладка и тестирование программ.

88. Виды программных ошибок.

89. Подходы к обработке ошибок в процессе работы программы.

90. Основные отличия языков С и C++. Типы данных bool и wchar_t.

91. Отличия классов и структур языка C++ от структур языка C.

92. Понятие класса и объекта. Доступ к полям и методам класса. Спецификаторы private и public.

93. Понятия конструктора и деструктора. Инициализация объекта класса. Операторы new и delete.

94. Пространства имен в языке C++.

95. Стандартная библиотека шаблонов языка C++ (STL). Основные отличия от библиотеки языка C.

96. Потоковый ввод-вывод с использованием средств STL.

97. Перегрузка операторов в C++.

98. Механизм исключений в C++. Цели использования. Обработка и генерация исключений.

99. Основы работы с шаблонами в C++.

100. Понятие парадигмы программирования.

Основные задачи: по тематике Л.р. + рекурсия + указатели на функции + динамические списки.

Дополнительные задачи (на «5»): по всей тематике курса.