Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metoda-C-2009.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
2.36 Mб
Скачать

Министерство образования и науки Российской Федерации

Федеральное агентство по образованию

Московский государственный университет печатиразованиюийской Федерации

Попов Д.И Демидов Д.Г.

ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ СИ

Конспект лекций

для студентов высших учебных заведений,

обучающихся по специальности 230102.65 «Автоматизированные системы обработки информации и управления»

Москва

2009

УДК

ББК

П

Рецензенты:

Попов Д.И. Демидов Д.Г.

Программирование на языке высокого уровня Си: конспект лекций / Д.И.Попов, Демидов Д.Г. – М.: МГУП, 2009. – 202 с.

ISBN

Конспект лекций рассчитан на студентов, владеющих минимальными знаниями и навыками в области информатики и математики. В конспекте лекций представлены основные темы из Государственного образовательного стандарта по дисциплине «Программирование на языке высокого уровня» для студентов высших учебных заведений, обучающихся по специальности 230102.65 «Автоматизированные системы обработки информации и управления». Особое внимание уделяется изучению следующих разделов: основные этапы решения задач на ЭВМ, жизненный цикл и критерии качества программы, проект и спецификация программы, схемы алгоритмов и способы записи алгоритмов, структура программы на языке высокого уровня Си, стандартные типы данных, представление основных управляющих структур программирования, функции, массивы, структуры, работа с файлами, динамические структуры данных, способы реализации линейных списков, стека, деревьев, рекурсивные определения и алгоритмы, программирование рекурсивных алгоритмов.

ISBN © Попов Д.И., 2009

© Демидов Д.Г., 2009

© Московский государственный

университет печати, 2009

Тема 1. Основные этапы решения задач на эвм 5

Постановка задачи разработки программного обеспечения 5

Анализ формальной постановки задачи 6

Выбор или разработка математической модели и метода решения 7

Разработка алгоритма 9

Базовые структуры алгоритма 13

Тема 2. Жизненный цикл программы. Критерии качества программы. 18

Техническое задание и спецификация программы 20

Разработка проекта программной системы 25

Программирование (кодирование) или программная реализация алгоритмов 26

Тестирование и отладка 29

Эксплуатация и сопровождение 31

Критерии качества программного обеспечения 32

Тема 3. Схемы алгоритмов, данных, программ 37

Символы данных 39

40

Отображает данные, вводимые в ручную, во время обработки с устройств любого типа (клавиатура, переключатели, кнопки, световое перо, полоски со штрих кодом и т.д.). 40

Символ отображает хранимые данные в виде, пригодном для обработки. Носитель данных не определен. В схемах алгоритмов он предназначен для обозначения ввода-вывода данных в случае использования запоминающего устройства, управляемого процесса. 40

Символы процесса 41

Символы линий 42

Специальные символы 43

Правила применения символов в схемах 44

Правила выполнения соединений 46

Специальные условные обозначения 47

Тема 4. Язык программирования высокого уровня Си 49

Общие сведения о языке Си 49

Алфавит языка Си 49

Грамматика для описания языка, синтаксические диаграммы 51

Структура программы на языке Си 54

Имена объектов в программе 57

Выражения, операции и приоритеты 60

Тема 5. Стандартные типы данных 62

Тема 6. Составные типы данных 66

Данные регулярного типа (массивы) 66

Строки 68

Данные комбинированного типа (структуры) 75

Перечисления 78

Объединения 79

Указатели 79

Тема 7. Представление основных управляющих структур программирования 85

Оператор присваивания 85

Составной оператор 86

Оператор перехода Goto 87

Условный оператор If 87

Оператор выбора switch 89

Операторы цикла while, do – while, for 91

Операторы прерывания циклов 94

Форматированный ввод данных 95

Форматированный вывод данных 97

Преобразование типов 100

Инициализация данных 103

Тема 8. Функции 105

Определение функций в языке Си 105

Вызов функций в языке Си 112

Рекурсивные функции 114

Тема 9. Файлы 128

Тема 10. Приемы программирования. Примеры алгоритмов 135

Алгоритмы сортировки 135

Алгоритмы поиска 139

Динамические структуры данных 145

Линейные списки 147

Стек, очередь, дек 154

Деревья 160

Приложение 1. Стандартные библиотеки языка Си 166

Приложение 2. Примеры реализации алгоритмов 174

Не рекурсивный алгоритм решения задачи Ханойская башня. 196

Рекурсивный алгоритм решения задачи Ханойская башня. 199

Приложение 3. Лабораторные работы 214

Лабораторная работа №1 214

Лабораторная работа №2 214

Лабораторная работа №3 215

Лабораторная работа №4 215

Лабораторная работа №5 216

Лабораторная работа №6 216

Лабораторная работа №7 217

Лабораторная работа №8 217

Лабораторная работа №9 218

Лабораторная работа №10 218

Лабораторная работа №11 219

Лабораторная работа №12 219

Список литературы 219

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]