
Вопрос 1
Область применения
1) научные вычисления (языки C++, FORTRAN, Java);
2) системное программирование (языки C++, Java);
3) обработка информации (языки C++, COBOL, Java);
4) искусственный интеллект (LISP, Prolog);
5) издательская деятельность (Postscript, TeX);
6) удаленная обработка информации (Perl, PHP, Java, C++);
7) описание документов (HTML, XML).
Генеалогиz
1956 Fortran 1960 Algol, Fortran 2 1960-1970 Basic 1970-1980 C Pascal
C → C++ → C# и Java
Pascal → Turbo Pascal → Delphi
Pascal → Object Pascal → C#
Вопрос 2
Жизненный цикл
Выработка системных требований → Выработка требований к ПО → Анализ → Проектирование → Кодирование → Тестирование → Эксплуатация
Этапы создания программы
Текст. Редактор → Исходный текст модуля → Препроцессор → Полный текст модуля → Компилятор → Объектный модуль → Компоновщик → Программа
Вопрос 3
Транслятор (англ. translator — переводчик) — это программа-переводчик. Она преобразует программу, написанную на одном из языков высокого уровня, в программу, состоящую из машинных команд.
Компилятор Интерпритатор
Алфавит:
Прописные и строчные латинские буквы (различаются в именах), знак подчеркивания
Цифры (0…9)
Специальные знаки “ { } , | [ ] ( ) + - * / % \ ; ‘ : ? < = > ! & ~ ^ . #
Разделители (пробел, табуляция, перевод строки)
Вопрос 4
Типы → Простые и составные
Простые → Целые Вещественные Указатели логические
Составные → Массивы Структуры Объединения Классы
Вопрос 5
<директивы препроцессора>
<функции>
Функция имеет вид
<тип> <имя> (<список параметров>)
{ <операторы>
}
Выполнение начинается с функции main
Вопрос 6
Операция — любая из операций, закрепленных в стандарте ANSI на язык Си, либо одна из следующих вновь добавленных операций:
Разделитель — парный или одиночный знак пунктуации, входящий в следующий список:
[ ] ( ) { } , ; : … * = # &
Приоритет
1) ( ) [ ] 2)! + - ++ – & * 3) ,* ->* 4) * / % 5) + - 6) << >> 7) < <= >= > 8) == != 9) & 10) ^ 11) | 12) && 13) || 14) ?: 15) = *= /= += -= &= ^= |= <<= >>= 13) ,
Вопрос 7
[класс памяти] [const] тип имя [инициализатор]
Модификатор const используется при описанииконстант.
Инициализатор задает начальное значение переменной в виде “= значение” или в круглых скобках “(значение)”.
Класс памяти определяет область видимости и время жизни переменной.Область видимости может быть локальной (внутри блока) и глобальной (во всем файле).Время жизни – временным (до конца блока) и постоянным (до выхода из программы).Класс auto (по умолчанию) – автоматическая переменная. Локальная и временная. Класс register – регистровая. Аналог auto, только переменная хранится в регистре процессора. Класс static– статическая переменная. Постоянная. Может быть локальной и глобальной. Класс extern– внешняя переменная. Определяется в другом файле программы.
Вопрос 7
Условный if (выражение) опер.1; [else опер.2;]
Выбора switch (выражение) {
case конст.1: список операторов 1
case конст.2: список операторов 2
…
default: операторы
}
Вопрос 8
Предусловие
while (выражение) оператор
Вопрос 9
Цикл выполняется так:
Вычисляется выражение
Если оно истинно (не 0) выполняется оператор
Снова вычисляется выражение
Если оно ложно – выход из цикла.
Постусловие
do оператор while (выражение)
Цикл выполняется так:
Выполняется оператор
Вычисляется выражение
Если оно истинно (не 0) снова выполняется оператор
Если оно ложно – выход из цикла.
Вопрос 10
Цикл с параметром for (инициализация; условие выполнения; модификация) оператор;
Инициализация выполняется перед началом цикла
Модификация - в конце каждой итерации
Оператор передачи управления
goto метка; Помеченный оператор – метка: оператор; break; выход из цикла или оператора выбора continue; переход к следующей итерации циклаr eturn [выражение]; выход из функции с возвратом значения