- •Московский государственный социальный университет академия информатики и информационных технологий
- •Введение
- •Часть. Основы программирования на Си
- •1.1. Структура простейшей Си-программы
- •1.2. Данные в Си и операции над ними
- •1.2.1. Свойства ячейки памяти. Переменные и константы
- •1.2.2. Типы данных в Си
- •1.2.3. Правила записи констант в Си
- •1.2.4. Описание переменных и именованных констант в Си.
- •1.2.5. Выражения в Си
- •1.3. Операторы преобразования данных
- •1.3.1. Общие положения
- •1.3.2. Функция форматного выводаprintf()
- •1.3.3. Функция форматного вводаscanf()
- •1.4. Разработка программ на Си
- •1.4.1. Понятие о качестве программы и основные технологические принципы разработки программ
- •1.4.2. Алгоритм и способы его записи.
- •1.4.3. Изображение алгоритмов в виде блок-схем
- •1.4.4. Базовые структуры алгоритмов и их кодирование на Си.
- •1. Следование
- •2. Разветвление (развилка)
- •If (условие)
- •If (условие)
- •3. Цикл
- •1.4.4. Примеры разработки программ
- •1.5. Массивы и указатели
- •1.5.1. Понятие массива. Основные правила работы с массивами в Си
- •1.5.2. Примеры программ с массивами.
- •1.5.3. Инициализация массивов
- •1.5.4. Указатели в Си10
- •1.5.5. Связь массивов с указателями в Си
- •Часть. Функции и многофайловые программы в Си
- •2.1. Общие сведения о подпрограммах и функциях
- •2.2. Функции си
- •2.2.1. Описание функции
- •2.2.2. Обращение к функции
- •2.2.3. Место описания функции в программе
- •2.2.4. Примеры программ, использующих функции
- •2.3. Краткие сведения о препроцессоре Си
- •2.3.2.Директива макроопределения #define
- •2.3.3. Директива #include включения файлов
- •2.3.4. Директивы условной компиляции
- •2.415. Многофайловые си-программы
- •2.4.1. Структура программы на Си. Область действия переменных
- •2.4.2. Время жизни и класс памяти переменных
- •Описатели класса памяти
- •2.4.3 Понятие о файле проекта
- •Часть. Обработка символьной информации и документов сложной структуры
- •3.1. Обработка символьной информации на Си
- •3.1.1. Символьный тип
- •3.1.2. Работа со строками символов в Си. Строковые литералы. .
- •3.1.3. Функции и макросы для работы с символьной информацией
- •3.1.4. Примеры программ
- •3.2. Тип "структура" в Си
- •Структура
- •3.3. Файлы в Си
- •3.3.1. Общие понятия.
- •3.2.Функции Си для работы с файлами
- •3.3.3. Примеры программ, использующих файлы
- •Литература
- •Содержание
Литература
Вирт Н. Алгоритмы+структуры данных = программы. - М.: Мир, 1985.
Подбельский В.В., Фомин С.С. Программирование на языке Си: - М.:Финансы и статистика, 1999. - 600 с.
Касаткин А.И., Вальвачев А.Н. Профессиональное программирование на языке Си. От Turbo C кBorland C++. Минск: Высшая школа, 1995.
Березин Б.И., Березин С.Б. Начальный курс Си и Си++. Москва. Диалог МИФИ. 1996. - 288 с.
Бартеньев О.В. СИ на 1 курсе. Москва. 1996. -50 с.
Глаголев В.Б. Visual Basic 6.0. Сборник заданий для лабораторно-практических занятий. Москва, МЭИ, 2000. –116 с.
Ален И. Голуб. С++. Правила программирования. М.:Бином, 1999. –271 с.
Содержание
ВВЕДЕНИЕ 2
Часть. Основы программирования на Си 5
1.1. Структура простейшей Си-программы 5
1.2. Данные в Си и операции над ними 6
1.2.1. Свойства ячейки памяти. Переменные и константы 6
1.2.2. Типы данных в Си 7
1.2.3. Правила записи констант в Си 9
1.2.4. Описание переменных и именованных констант в Си. 10
1.2.5. Выражения в Си 11
1.3. Операторы преобразования данных 16
1.3.1. Общие положения 16
1.3.2. Функция форматного вывода printf() 17
1.3.3. Функция форматного ввода scanf() 19
1.4. Разработка программ на Си 21
1.4.1. Понятие о качестве программы и основные технологические принципы разработки программ 21
1.4.2. Алгоритм и способы его записи. 23
1.4.3. Изображение алгоритмов в виде блок-схем 24
1.4.4. Базовые структуры алгоритмов и их кодирование на Си. 25
3. Цикл 27
. 27
1.4.4. Примеры разработки программ 29
1.5. Массивы и указатели 33
1.5.1. Понятие массива. Основные правила работы с массивами в Си 33
1.5.2. Примеры программ с массивами. 35
1.5.3. Инициализация массивов 37
1.5.4. Указатели в Си 38
1.5.5. Связь массивов с указателями в Си 40
Часть . Функции и многофайловые программы в Си 41
2.1. Общие сведения о подпрограммах и функциях 41
2.2. Функции СИ 43
2.2.1. Описание функции 43
2.2.2. Обращение к функции 45
2.2.3. Место описания функции в программе 45
2.2.4. Примеры программ, использующих функции 46
2.3. Краткие сведения о препроцессоре Си 52
2.3.2.Директива макроопределения #define 52
2.3.3. Директива #include включения файлов 54
2.3.4. Директивы условной компиляции 55
2.4. Многофайловые СИ-программы 55
2.4.1. Структура программы на Си. Область действия переменных 55
2.4.2. Время жизни и класс памяти переменных 58
2.4.3 Понятие о файле проекта 60
Часть . Обработка символьной информации и документов сложной структуры 61
3.1. Обработка символьной информации на Си 61
3.1.1. Символьный тип 61
3.1.2. Работа со строками символов в Си. Строковые литералы. . 61
3.1.3. Функции и макросы для работы с символьной информацией 63
3.1.4. ПРИМЕРЫ ПРОГРАММ 64
3.2. Тип "структура" в Си 68
3.3. Файлы в Си 71
3.3.1. Общие понятия. 71
3.2.Функции Си для работы с файлами 72
3.3.3. Примеры программ, использующих файлы 74
ЛИТЕРАТУРА 77
1Редактирование связей также называюткомпоновкой
2Предполагается, что читатель имеет представление об уровнях памяти компьютера, а также о двоичной системе счисления и организации памяти компьютера (битах, байтах и т.д.)
3Данные логического типа могут принимать два значения: истина и ложь. Предполагается, что читатель знаком с основными логическими операциями.
4Подробно эти правила изложены, например, в[2].
5Пока рассматриваем только стандартные функции
6Конечно, это кажущаяся простота, которая является следствием формального использования этих операторов в их простейшем виде.
7Аль Хорезми означает "из Хорезма".
8Предполагается, что с этим принципом читатели знакомы, например, из курса "Информатика".
9Локальные переменные считаются неопределенными, статические переменные при описании автоматически обнуляются - см. пп. 1.2.5 и 2.4.
10Этот и следующий параграфы отражают специфику языка Си. Они могут быть пропущены при первом чтении пособия.
11Кавычки присутствуют потому, что в вводу и выводу эти термины здесь отношения не имеют
12Здесь имеется некоторая аналогия с формулой. Вместо обозначений, участвующих в формуле можно подставить другие обозначения, числа или выражения.
13Иногда используются эквивалентные термины“по адресу” или “по ссылке”
14Void(англ.) -пустой, свободный, незанятый; в Си это ключевое слово используется в двух значениях: либоотсутствующеезначение, либолюбойтип.
15При первом чтении этот раздел можно пропустить
16Обычно используют для локальных переменных