Данный материал содержит полный комплект из 30 экзаменационных билетов по дисциплине «Технология программирования». Каждый билет включает теоретические вопросы, охватывающие основы алгоритмизации, объектно-ориентированного программирования (ООП), работу с памятью, структуры данных и жизненный цикл ПО, а также практические задания на языке C/C++, требующие реализации алгоритмов сортировки, работы с матрицами, строками и структурами.
Билет № 1
Технология программирования
- Что такое алгоритмический язык? Основные достоинства программирования на алгоритмическом языке? Недостатки?
- Что такое разработка?
- Инкапсуляция. Что это такое?
- Найти ошибку:
int * pc; float f, t; t = *pc; pc = &f;
- Реализовать программой на «C» Сортировку массива из 20 элементов.
Билет № 2
Технология программирования
- Информация и данные
- Что такое постановка?
- Перегрузка бинарных операций.
- Найти ошибку:
int **pc; int f, t; int i, j; pc = new int [f]; t = pc[i][j];
- Реализовать программой на «C» Найти среднее арифметическое элементов массива.
Билет № 3
Технология программирования
- Схемы реализации БД.
- Перегрузка функций?
- Полиморфизм Что это такое?
- Найти ошибку:
enum color {красный, зелёный, чёрный, белый}; - Реализовать программой на «C» Найти дисперсию элементов массива.
Билет № 4
Технология программирования
- Что такое алгоритм?
- Агрегаты данных: перечислить известные, подробно рассказать о любом.
- Наследование. Что это такое?.
- Найти ошибку:
int pc[7] = {6, 10, 2, 5, 9, 11, 24, 45, 2, 1, 9}; float f, t; - Реализовать программой на «C» Транспонировать матрицу.
Билет № 5
Технология программирования
- Перечислите последствия внедрения программного обеспечения в производство.
- Что такое СУБД?
- Перегрузка унарных операторов?
- Найти ошибку:
int * pc; int f, t; t = 100; pc = new int [t]; pc = f;
- Реализовать программой на «C» Умножение матриц
Билет № 6
Технология программирования
- Требования, цели, спецификации?
- Стоимость ликвидации ошибки?
- Конструктор. Что это и зачем?
- Найти ошибку:
int **pc; int f, t; int i, j; pc = new * int [f] for (i = 0; i < t; ++i) pc[i] = new int [f]; - Реализовать программой на «C» Поиск файлов с заданным расширением.
Билет № 7
Технология программирования
- Сущность алгоритмизации.
- Что такое банк данных?
- Что такое виртуальная функция?
- Определить длину структуры:
struct Example ( int * Example; char c; int f, t; }; - Реализовать программой на «C» Определить длину «C» — строки
Билет № 8
Технология программирования
- Что такое транслятор? Редактор связей? Загрузчик? Почему они существуют?
- Цели в работе программиста?
- Дружественные функции. Зачем они нужны?
- Опеределить длину объекта класса:
class U { int **pc; int f, t; int i, j; }; - Реализовать программой на «C» Поиск заданного слова в текстовом файле.
Билет № 9
Технология программирования
- Вызов подпрограмм: передача параметров.
- Почему некоторые типы данных нельзя побитно копировать?
- Что такое абстрактный класс?
- Определить длину объединения:
union Example ( int * Example; char c; int f, t; }; - Реализовать программой на «C» Сравнение «C» — строк.
Билет № 10
Технология программирования
- Причины появления SQL?
- Почему менеджеры стремятся к технологиям не зависящим от личности программиста?
- Что такое DLL?
- Найти ошибку:
class U { int **pc; int f, t; int i, j; }; U in, val; in.f = val.i; - Реализовать программой на «C» Вывести в текстовый файл произвольный текст.
Билет № 11
Технология программирования
- Что такое процедурная декомпозиция.?
- Конструктор копирования?
- Проектирование сверху вниз.
- Найти ошибку:
union Example { int * Example; char c; int f, t; }; Example U; U = 10; - Реализовать программой на «C» Определение в «C» — строке позиции заданного символа.
Билет № 12
Технология программирования
- Как делятся проекты по отношению к пользователю?
- Схемы компоновки программ.
- Стэк и очередь.
- Найти ошибку:
AnsiString u; u[1] = 'p';
- Реализовать программой на «C» Нарисовать на форме треугольник.
Билет № 13
Технология программирования
- Спецификации? Что должно туда входить?
- Что такое Unicode?
- Схема объявления класса в языке C++.
- Найти ошибку:
class Ex ( int * Ex; char c; int f; }; class Ux ( int * Ux; char c; int f; }; Ex U; Ux pu; U = pu; - Реализовать программой на «C» Распределить память под двумерный массив.
Билет № 14
Технология программирования
- Величина проекта? На что она влияет?
- Основные различия между программой и подпрограммой.
- Как вы понимаете структурное программирование?
- Найти ошибку:
AnsiString u = "строка"; char fi[100]; fi = u;
- Реализовать программой на «C» Найти скалярное произведение двух векторов.
Билет № 15
Технология программирования
- POD – данные?
- Порядок вызова конструктора и деструктора при наследовании.
- Что такое декларативное программирование?.
- Найти ошибку:
enum color {red, white, black}; color cl = green; - Реализовать программой на «C» Вывести на экран минимальный элемент массива.
Билет № 16
Технология программирования
- Почему на блок – схемах трудно отобразить данные.
- Что такое жизненный цикл программы? Перечислите основные «за» и «против» этого термина.
- Контейнеры и итераторы.
- Найти ошибку:
char u = "строка"; char b = "dnjhfz"; if u == b {.................}; - Реализовать программой на «C» Присвоение одной «C»-строки другой «C»-строке.
Билет № 17
Технология программирования
- Что такое «программирование в коде» — основные принципы, достоинства и недостатки?
- Что такое императивное программирование?
- Что такое виртуальный базовый класс?.
- Найти ошибку:
enum color {red, white, black}; enum col {red, green, brown, magenta}; color cl = red; - Реализовать программой на «C» Рассортировать элементы двумерного массива.
Билет № 18
Технология программирования
- Глобальные переменные; достоинства и недостатки.
- Чем отличаются пользовательские данные от встроенных?
- Чего нельзя делать при перегрузке операций?
- Найти ошибку:
int i; switch (i) { case 3: i = 10; break; case i < 0: i = ; break; } - Реализовать программой на «C» Определить двумерный массив. Подсчитать в нём число элементов, попадающих в заданный интервал.
Билет № 19
Технология программирования
- Причины отличия технологии программирования от обычных технологий.
- Продемонстрируйте на примерах свойства мощности, особенности и красоты алгоритма.
- Соотношение ООП и процедурного программирования.
- Чему будет равно следующее выражение в результате вычислений:
int i, j, k; k = 10; j = 1; i = ++j + 2 - (--k) + (--j) * (++k) - (--j);
- Реализовать программой на «C»
class MN { float realx; float imx; ....................... };Перегрузить для приведённого класса операцию сложения
Билет № 20
Технология программирования
- Перечислите основные принципы отладки.
- Операторы new и delete в языке C++.
- Что происходит при присваивании одного объекта другому?
- Найти ошибку:
int M[10], N[10]; if (M == N) {.......................} - Реализовать программой на «C» Перестановкой строк и столбцов двумерной матрицы вывести максимальный элемент матрицы на место 0, 0
Билет № 21
Технология программирования
- Что такое массив. Схемы представления массива в памяти.
- Разные реализации стэка: достоинства и недостатки.
- В чём выражается связь между наследованием и полиморфизмом
- Чему будет равно следующее выражение в результате вычислений:
int i, j, k; k = 10; j = 3; i = ++j / k;
- Реализовать программой на «C»
class MN { float realx; float imx; ....................... };Перегрузить для приведённого класса операцию умножения на действительное число.
Билет № 22
Технология программирования
- Проблемы связи разноязыковых модулей.
- Что такое функциональное программирование?
- Укажите обычную схему доступа к закрытым членам класса.
- Найти ошибку:
int M[10], N[100]; for (i = 0; i < 100; ++i) M[i] = N[i];
- Реализовать программой на «C» Умножить заданную строку двумерной матрицы на число.
Билет № 23
Технология программирования
- Что такое шаблоны. Приведите пример шаблонной функции.
- Что такое байт-код?
- Зачем может потребоваться перегрузка оператора присваивания?
- Что делает следующий оператор?
for (float p = 30.2491; p > 1; p -= 1) ;
- Реализовать программой на «C»
class MN { float realx; float imx; ....................... };Перегрузить для приведённого класса операцию сравнения.
Билет № 24
Технология программирования
- Краткая история технологии программирования.
- Покажите, что ООП – средство расширения системы типов.
- Что такое реентерабельная программа?
- Чему равно значение переменной i?
int i = 10; for (int i = 0; i < 100; ++i) M[i] = N[i]; // Вот в этой точке : Чему равно значение переменной i?
- Реализовать программой на «C» Функцию, выделяющую из строки подстроку длиной L с позиции p.
Билет № 25
Технология программирования
- Необходимые соглашения для реализации библиотеки стандартных программ.
- На какие две группы можно разбить данные существующие во время работы программы.
- Что такое адаптер?
- Найти ошибку:
int M[100]; for (int p = 0; p < 100; ++p ) M[p] = p; p = 33; MessageDlg ("Значение переменной M[33] " + IntToStr(M[p], mtInformation, TMsgDlgButtons() << mbOK, NULL); - Реализовать программой на «C» Функцию pop() для стэка, реализованного на массиве.
Билет № 26
Технология программирования
- Краткая история языка «C++».
- В чём разница и сходство процедурной и объектно-ориентированной декомпозиции.
- Какие свойства информации вы знаете?
- Как по вашему транслятор интерпретирует следующее выражение?
int j, i = 10; j = 2; j = ++j+++i++;
- Реализовать программой на «C» Функцию push(p) для стэка, реализованного на массиве.
Билет № 27
Технология программирования
- Критерии правильности программы? Что такое хорошая программа?
- Сопровождение ПО: кратко охарактеризовать технологическую стадию.
- Что влияет на разбиение программы на модули?
- Можно ли обычными способами вычислить на машине 1000000!
- Реализовать программой на «C» Определение структуры класса List — список
Билет № 28
Технология программирования
- Встроенные типы данных.
- Перегрузка функций?
- Что такое чисто виртуальная функция?
- Как по — вашему, следует ли для класса List (список) перегружать операцию []?
- Реализовать программой на «C» Рассортировать по алфавиту массив строк.
Билет № 29
Технология программирования
- Тип Variant – что такое? реализация?
- Краткая история появления Windows.
- Можно ли процесс документирования программного обеспечения считать одним из способов отладки.
- Найти ошибку:
int i; int midl[100]; for (I = 0; I < 100; ++I) midl[I] = i;
- Реализовать программой на «C» Реализовать структуру «точка» на плоскости.
Билет № 30
Технология программирования
- Перечислите законные основания для сокрытия текста программы.
- Каким объектом является программа?
- Когда вызывается конструктор копирования?
- Найти ошибку:
char u[10] = "привет от старых штиблет";
- Реализовать программой на «C» Программу удаляющую из «C» строки все правые пробелы.
