Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебно-практическое пособие ПРОГ.doc
Скачиваний:
35
Добавлен:
20.11.2019
Размер:
5.63 Mб
Скачать

Тема 1. Алгоритмы и программы 4

Цели и задачи изучения темы 4

1.1.Понятие алгоритма. Понятие программы. Способы записи алгоритмов. 4

1.2.Критерии качества программ 4

1.3.Низкоуровневые и высокоуровневые языки программирования 5

1.4.Принципы структурного программирования 5

Вопросы для повторения 6

Резюме по теме 6

Тема 2. Характеристика языка Си 6

Цели и задачи изучения темы 6

2.1.История языка Си 6

2.2.Основные характеристики языка Си. 7

2.2.1.Достоинства языка Си 7

2.2.2.Компиляторы и интерпретаторы 7

2.2.3.Сильная типизация 9

2.3.Структура простой программы 9

Вопросы для повторения 11

Резюме по теме 11

Тема 3. Основы языка Си 11

Цели и задачи изучения темы 11

3.1. Данные (сведения необходимые для начала работы) 11

3.1.1.Константы и переменные 11

3.1.2.Основные типы данных 12

3.1.3.Структуры данных 13

3.1.4.Оператор определения имени типа typedef 15

3.1.5.Массивы 15

3.1.6.Указатели 16

3.1.7.Указатели и массивы 16

3.1.8.Внешние и внутренние переменные 16

3.2.Стандартные функции ввода-вывода 17

3.3. Операции, операторы и выражения 18

3.3.1.Оператор присваивания 18

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

3.3.3.Операции увеличения и уменьшения 18

3.3.4.Операции сравнения 19

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

3.3.6.Побитовые логические операции 19

3.3.7.Операции сдвига 19

3.3.8.Операции "увеличить на", "домножить на" и т.п. 20

3.3.9.Операции с указателями. Указатели и массивы 20

3.3.10.Операция приведения типа 21

3.4.Управляющие конструкции 22

3.4.1.Фигурные скобки 22

3.4.2.Оператор выбора if и операция условия 22

3.4.3.Оператор множественного выбора switch 23

3.4.4.Оператор цикла while 24

3.4.5.Оператор цикла for 25

3.4.6.Оператор цикла do...while 26

3.5.Данные (более детальные сведения) 26

3.5.1.Структуры 26

3.5.2.Указатели и структуры 27

3.5.3.Структуры и оператор определения имени типа typedef 27

3.5.4.Строки 28

3.5.5.Матрицы и многомерные массивы 29

3.6.Пользовательские функции 29

3.6.1.Определение функций 29

3.6.2.Прототипы функций 31

3.6.3.Аргументы командной строки 32

Вопросы для повторения 32

Резюме по теме 33

Тема 4.Работа с файлами 33

Цели и задачи изучения темы 33

4.1.Последовательность шагов при работе с файлами 33

4.2.Функция открытия файла fopen 34

4.3.Функции бинарного чтения и записи fread и fwrite 35

4.4.Функция закрытия файла fclose 36

4.5.Функции форматного чтения и записи fscanf и fprintf 37

4.6.Другие функции ввода-вывода 38

4.6.1.Функции посимвольного ввода-вывода 38

4.6.2.Функции построкового ввода-вывода 38

4.6.3.Функции позиционирования в файле 39

Вопросы для повторения 39

Резюме по теме 40

Тема 5.Распределение памяти 40

Цели и задачи изучения темы 40

5.1.Выделение памяти на этапе компиляции и на этапе выполнения программы 40

5.2.Функции malloc и free 40

5.3.Выделение памяти под матрицы на этапе выполнения программы 41

Вопросы для повторения 42

Резюме по теме 43

Тема 6. Методы организации данных в памяти эвм 43

Цели и задачи изучения темы 43

6.1.Абстрактные типы данных 43

6.2.Время выполнения программ 43

6.3.Списки 44

6.4.Реализация списков 45

6.5.Стеки 50

6.6.Реализация стеков 51

6.7.Очереди 51

6.8.Реализация очередей 51

6.9.Графы и деревья 52

6.10.Некоторые СД для хранения графов и деревьев 53

Вопросы для повторения 57

Резюме по теме 58