Вопросы к экзамену по дисциплине «Основы программирования»
2 Семестр
-
Вариативные структуры: обобщенное определение, преимущества, примеры использования. http://easy-code.ru/lesson/structures-in-cpp
-
Перечислимый тип данных: определение, назначение, пример использования. https://ru.wikipedia.org/wiki/%CF%E5%F0%E5%F7%E8%F1%EB%FF%E5%EC%FB%E9_%F2%E8%EF#C.2B.2B
http://cppstudio.com/post/8106/
-
Динамические списки: назначение, основные приципы организации.http://www.codenet.ru/progr/cpp/dlist.php
-
Односвязный список: определение, особенности использования, типовые алгоритмы обработки.http://lord-n.narod.ru/download/books/walla/programming/Spr_po_C/22/2205.htm
-
Сравнительный анализ односвязного списка и массива структур.https://ru.wikipedia.org/wiki/Массив_(программирование)
-
Двувязный список: определение, особенности использования, типовые алгоритмы обработки.http://lord-n.narod.ru/download/books/walla/programming/Spr_po_C/22/2206.htm
-
Потоковый ввод-вывод. Определение потока, стандартные потоки, типы потоков. http://www.butovo.com/~zss/cpp/stream.htm
-
Открытие потоков: режимы открытия, различия текстовых и двоичных потоков.http://www.c-cpp.ru/books/otkrytie-i-zakrytie-faylov
-
Основные функция контроля состояния потоков.
http://www.itmathrepetitor.ru/s-lekciya-9-rabota-s-potokami-v-s/
-
Основные функции ввода строковой информации в поток и вывода информации из потока.http://dic.academic.ru/dic.nsf/ruwiki/694631
-
Форматированный потоковый ввод-вывод в языке Си.http://kvodo.ru/urok-10-formatirovannyiy-vvod-vyivod-v-c.html
-
Ввод-вывод с использованием буфера. Отличия от форматированного ввода-вывода.http://younglinux.info/c/getchar http://polygraphy.academic.ru/23485/Буферизация_ввода-вывода
-
Функции в Си: определение, прототип, вызов.http://cppstudio.com/post/6471/
-
Основные преимущества структурного стиля программирования.http://itandlife.ru/programming/cpp/bazovye-konstrukcii-strukturnogo-programmirovaniya-v-c/
-
Формальные и фактические параметры. Связь формальных и фактических параметров функций. http://itedu.ru/courses/cpp/functions-in-cpp
Формальные и фактические параметры
Формальные параметры существуют в прототипе и теле определения функции. Они задаются некоторыми уникальными именами и внутри функции доступны как локальные переменные.
Фактические параметры существуют в основной программе. Они указываются при вызове функции на месте формальных.
В момент вызова функции значения фактических параметров присваиваются формальным. Соответственно, имена формальных и фактических параметров могут совпадать, это не вызовет конфликта.
Пример:
int n = -25; // глобальная переменная
int modul (int n) { // n - формальный параметр
if(n<0) n = -1 * n; // n будет перекрывать глобальную переменную с именем n
return n;
}
int main(void) {
cout << modul(n); // 25, значение глобальной переменной n будет передано в функцию
cout << n; // -25, но работа внутри функции пойдёт с локальной переменной n
return 0;
}
Перекрытие локальными переменными и параметрами глобальных объектов — одна из причин, по которой не следует создавать функции обращающиеся к глобальным объектам (не известно какими будут имена в вашей следующей или чьей-то чужой программе, использующей вашу функцию).
-
Порядок вызова функции и возврата из нее. Передача параметров по значению и по адресу.http://kvodo.ru/urok-6-2-funktsii-peredacha-parametrov-operator-return.html