- •Т.Э. Шульга программирование.
- •Глава 1. Основы программирования на языке высокого уровня 6
- •Глава 2. Динамические структуры данных 40
- •Глава 3. Основы объектно-ориентированного программирования 53
- •Введение
- •Глава 1. Основы программирования на языке высокого уровня
- •Void main()
- •Задания
- •1.2. Переменные. Основные типы данных
- •Ввод – вывод значений переменных
- •Форматирование данных при обменах с потоками ввода-вывода
- •Void main()
- •Void main()
- •Преобразование типов
- •Задание 1. Описание переменных и преобразование типов
- •Задание 2. Форматирование вывода
- •1.3. Основные операции
- •Void main ()
- •Задания
- •1.4. Конструкции выбора
- •Void main()
- •Void main()
- •Void main()
- •Задание 1. Обработка введенного символа
- •Задание 2. Вычисление значения функции
- •Задание 3. Применение разветвляющихся алгоритмов при решении простейших задач
- •Задание 4. Mультиветвление
- •1.5. Конструкции цикла и передачи управления
- •Void main()
- •Задание 1. Детерминированные циклы. Простейшие задачи
- •Void main()
- •Задание 2. Итерационные циклы. Простейшие задачи
- •Void main()
- •Int last;
- •Задание 3. Одномерные массивы
- •Void main ()
- •Int a[100],n,max,imax;
- •Задание 4. Вложенные циклы
- •Void main ()
- •Задание 5. Двумерные массивы
- •Void main ()
- •Задание 6. Посимвольная обработка строк
- •Void main()
- •Задание 7. Сортировка массива
- •Void main ()
- •1.6.Функции
- •Int oct (int a)// определение функции
- •Void main()
- •Void main()
- •Int strcmp(const char *str1, const char* str2);
- •Int fclose (file * stream);
- •Int feof(file *stream);
- •Int fseek ( file* stream, long offset, int origin);
- •Задание 1. Определение и вызов функций
- •Задание 2. Рекурсивные функции
- •Задание 3. Использование библиотечных функций string.H
- •Void main()
- •Задание 4. Использование библиотечных функций stdio.H
- •Void main ()
- •Глава 2. Динамические структуры данных
- •Int year;
- •Int children;
- •Задание 1. Структуры
- •Int year;
- •Int month;
- •Int visokos(int year)
- •Vivod (date d)
- •Int day_number(date d)
- •Vivod(mas[I]);
- •Vivod (min(mas,n));
- •Задание 2. Динамический список
- •Int mark;
- •Void vvod ()
- •Void vivod()
- •If (begin)
- •Void vivod_f()
- •If (begin)
- •Void add()
- •Void udol () //
- •If (begin)
- •Void del()
- •Void main ()
- •Задание 3. Использование стеков и очередей
- •Глава 3. Основы объектно-ориентированного программирования
- •Void empty();
- •If (len) delete []s;
- •Void cStr::empty()
- •Задание 1 . Описание простейшего класса
- •Задание 2 . Класс string
- •Void main()
- •Void main ()
- •Задание 3. Класс fstream
- •Задание 4. Наследование
- •Список литературы
Федеральное агенство по образованию
САРАТОВСКИЙ ГОСУДАРСТВЕННЫЙ СОЦИАЛЬНО-ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ
Кафедра теоретических основ информатики
и информационных технологий
Т.Э. Шульга программирование.
ОСНОВЫ ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ С++
Учебное пособие
Саратов 2006
УДК
ББК
П62 Шульга Т.Э. Программирование. Основы программирования на языке С++. Учебное пособие для студентов специальности «Математическое обеспечении и администрирование информационных систем» и направления «Бизнес-информатика». - Саратов: изд-во СГСЭУ, 2006.- 64с.
ISBN –
В пособии излагаются основы языка программирования С++, приведены решения типовых задач и рекомендуемые задания по каждой теме. В пособии описывается структура программы, написанной на С++, типы данных, используемые в языке, операции языка, конструкции выбора, циклов и передачи управления, рассматриваются динамические структуры данных, даются основы процедурного программирования и объектно-ориентированного программирования.
Рекомендует к печати ученый совет СГСЭУ.
Рецензенты кафедра теоретических основ информатики и информационных технологий СГСЭУ;
к. ф. - м. н. С.В. Папшев
Шульга Т.Э., 2006
ISBN –5-85559-083-6 Изд-во СГСЭУ, 2006
СОДЕРЖАНИЕ
ВВЕДЕНИЕ 5
Глава 1. Основы программирования на языке высокого уровня 6
1.1. Структура программы на языке С++ 6
Задания 7
1.2. Переменные. Основные типы данных 8
Задание 1. Описание переменных и преобразование типов 13
Задание 2. Форматирование вывода 14
1.3. Основные операции 14
Задания 15
1.4. Конструкции выбора 16
Задание 1. Обработка введенного символа 18
Задание 2. Вычисление значения функции 18
Задание 3. Применение разветвляющихся алгоритмов при решении простейших задач 19
Задание 4. Mультиветвление 20
1.5. Конструкции цикла и передачи управления 20
Задание 1. Детерминированные циклы. Простейшие задачи 24
Задание 2. Итерационные циклы. Простейшие задачи 25
Задание 3. Одномерные массивы 26
Задание 4. Вложенные циклы 27
Задание 5. Двумерные массивы 28
Задание 6. Посимвольная обработка строк 29
Задание 7. Сортировка массива 30
1.6.Функции 31
Задание 1. Определение и вызов функций 36
Задание 2. Рекурсивные функции 37
Задание 3. Использование библиотечных функций string.h 37
Задание 4. Использование библиотечных функций stdio.h 39
Глава 2. Динамические структуры данных 40
Задание 1. Структуры 44
Задание 2. Динамический список 47
Задание 3. Использование стеков и очередей 51
Глава 3. Основы объектно-ориентированного программирования 53
Задание 1 . Описание простейшего класса 60
Задание 2 . Класс string 62
Задание 3. Класс fstream 64
Задание 4. Наследование 66
Список литературы 68
Введение
Дисциплина «Программирование» относится к циклу общепрофессиональных дисциплин и блоку дисциплин, обеспечивающих программную подготовку студентов. Дисциплина основана на знаниях, полученных в результате изучения дисциплины «Информатика» и является базисом для изучения таких общепрофессиональных и специальных дисциплин как «Технология программирования», «Системное и программное обеспечение», «Формальные языки и грамматики», «Компьютерное моделирование», «Базы данных», «Теория вычислительных процессов и структур» «Функциональное программирование», «Параллельное программирование». Целью курса является изучение студентами основ структурного и объектно-ориентированного программирования на языке высокого уровня.
В результате изучения дисциплины студенты должны знать и уметь использовать основные конструкции языков программирования, основные и абстрактные типы данных, способы записи алгоритма на языке программирования, обладать навыками объектно-ориентированного программирования.
В качестве базового языка выбран язык С++. Язык программирования С++ был разработан на основе языка С Б. Страуструпом и вышел за пределы его исследовательской группы в начале 80-х годов. На первых этапах разработки язык носил условное название «С с классами», а в 1983 г. Р. Масситти предложил название С++, что образно отразило происхождение этого языка от языка С. Язык С++ является расширением (надмножеством) языка С, поэтому программы, написанные на С, могут обрабатываться компиляторами языка С++, а в программах, написанных на С++, можно обращаться к библиотечным функциям языкам С. Однако, язык C++ существенно отличается от C, так как поддерживает абстракцию данных и обеспечивает объектно-ориентрованное программирование.
Данное пособие предназначено для изучения основ языка С++ и не требует от читателя знакомства с языком С. В пособии описывается структура программы, написанной на С++, типы данных, используемые в языке, операции языка, конструкции ветвления, циклов и передачи управления, а также даются основы процедурного и объектно-ориентированного программирования.
Данное пособие может быть использовано на практических занятиях при изучении дисциплины «Программирование» (специальность «Математическое обеспечении и администрирование информационных систем») по следующим разделам дисциплины «Основы программирования на языке высокого уровня» (глава 1), «Динамические структуры данных» (глава 2), «Основы объектно-ориентированного программирования» (глава 3). Разделы «Технология создания программ» и «Основные парадигмы программирования» не освещены в пособии, так как в соотвествии с рабочей программой не предполагают проведения практических занятий. Кроме того, пособие может быть испольвано на практических занятиях при изучении дисциплин «Информатка и программирование» (направление «Бизнес-информатика», календарный модуль 3-4) и «Языки программирования и методы трансляции» (специальность «Прикладная математика и информатика»). Каждая глава пособия содержит краткий теоретический материал, необоходимый для выполнения практических заданий, примеры решения заданий, а также перечень заданий.