- •Вопросы к экзамену по дисциплине программирование
- •Основные этапы решения задач на эвм. Критерии качества программы.
- •2. Жизненный цикл программы. Постановка задачи и спецификация программы.
- •3. Алгоритм и его свойства. Блок-схемы алгоритмов
- •4. Линейная алгоритмическая структура. Типовые примеры
- •5. Циклические алгоритмические структуры. Основные операторы ветвления. Типовые примеры
- •8. Общая характеристика языка Си. Возможности и особенности языка Си. Элементы, алфавит языка Си.
- •9. Программа, функция, оператор. Константы и переменные.
- •10. Категории типов данных. Представление чисел в эвм с фиксированной и плавающей точкой.
- •11. Представление символов в эвм. Основные типы данных, инициализация данных.
- •Категории типов данных
- •Инициализация данных
- •12. Операции и выражения. Выражения и присваивания. Операнды. Операции. Приоритеты операций и порядок вычисления. Побочные эффекты.
- •Выражения и присваивания
- •1.3.1. Операнды и операции
- •Приоритеты операций и порядок вычислений
- •13 Преобразование типов. Пустой оператор. Составной оператор. Преобразование типов
- •Пустой оператор
- •Составной оператор
- •14. Операторы управления вычислительным процессом. Условные операторы условия if.
- •15. Операторы циклов (for, while, do- while).
- •Оператор for
- •Оператор while
- •Оператор do while
- •16. Операторы переходов (break, continue, return, goto). Оператор break
- •Оператор continue
- •Оператор goto
- •17. Си. Функции. Основные понятия. Определение функции. Вызовы функций.
- •18. Передача аргументов в функцию и из функции. Определение и описание указателей.
- •19 Функция main()
- •23 Указатели и массивы. Массив как параметр функции.
- •25. Типы программного обеспечения
- •Системное программное обеспечение
- •Прикладное программное обеспечение
18. Передача аргументов в функцию и из функции. Определение и описание указателей.
19 Функция main()
В языке Си можно использовать следующие два встроенные аргумента функции main(): это argc и argv. В результате получается следующее обращение к функции main() для вызова этой функции с аргументами: int main(int argc, char *argv[]). Существует еще и третий аргумент функции main(). Это аргумент char *env[]. Два первых аргумента используются для передачи аргументов командной строки. Третий аргумент позволяет организовать доступ к параметрам среды операционной системы. Эти три аргумента доступны только для функции main(). Параметр argc содержит количество аргументов командной строки и является параметром типа int. Он всегда не меньше 1, так как имя программы, вызываемой для выполнения трактуется как первый параметр командной строки. Параметр argv является указателем на массив строк. Каждый элемент массива указывает на аргументы командной строки. Один параметр отделяется от другого пробелом. Поэтому, если в Вашем сообщении, которое Вы хотите передать программе, предполагается иметь пробелы, то Ваше сообщение должно быть заключено в кавычки. Например, если Вы хотите передать Вашей программе следующий текст: "Ivanov Ivan, born in 1989", то этот текст нужно сопровождать кавычками, так как в самом тексте уже есть пробелы. Покажем это, используя специально написанную небольшую программу.
23 Указатели и массивы. Массив как параметр функции.
Имя масс. обозн. как ук.-константа на массив. В массиве int x[10] x-ук. на нулевой элемент масс-ва, т.е. x=&x[0]. Поэтому для доступа к элементам масс., кроме индексированных имён можно использовать разадрессованные ук.: имя[индекс]*(имя+индекс) (пр:x[i]*(x+i))
Т.к. имя масс. явл. ук.- константой, то его нельзя изм. в прогр., т.е. ему нельзя ничего присвоить.
Мас. как параметр ф-ии
При исп. в качестве парам масс-ва в ф-ию передаётся ук.на его первый элемент, т.е. масс.всегда передаётся по адресу. При этом инф. о кол-ве элем. масс. теряется и следует передавать его размерность ч/з отдельные парам. Передать масс. в ф-ию можно след. сп.:
1)func(int a[N],int N)
2)func(int a[], int N)
3)func(int *a, int N)
25. Типы программного обеспечения
Функционально, программное обеспечение делится на следующие категории:
Системное программное обеспечение
Прикладное программное обеспечение
Инструментальное программное обеспечение
Системное программное обеспечение
операционная система;
файловый менеджер;
архиватор;
перекодировщик;
антивирус;
другие...
Прикладное программное обеспечение
Можно выделить множество групп прикладного ПО:
Офисное ПО: текстовый процессор, электронная таблица;
ПО для работы в сети и обмена информацией: браузер, почтовая программа, программа для обмена мгновенные сообщениями (чат и т. д.);
ПО для работы с графикой, звуком;
ПО для проектирования (система автоматизации проектных работ);
компьютерые игры;
демо;
другие...