Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект С++ (Часть 1).doc
Скачиваний:
17
Добавлен:
09.11.2019
Размер:
1.24 Mб
Скачать

C++

Конспект лекций Часть 1 Оглавление

Часть 1 1

Оглавление 2

Введение 4

1. Этапы и проблемы решения задач с использованием компьютера 4

2. Общие сведения о языке программирования C++ и системе программирования 4

2.1. История создания языка C++ 4

2.2. Краткая характеристика языка C++ 5

Алфавит языка 5

Ключевые слова 6

Идентификаторы 6

Знаки операций 7

Константы 7

Комментарии 7

2.3. Структура и основные элементы программы 7

2.4. Трансляция программ и их выполнение 9

3. Стандартные (базовые) типы данных, операции и выражения 11

3.1. Типы данных, переменные и константы 12

Понятие типов данных 12

Классификация простых предопределенных типов данных 13

Переменные, константы 13

3.2. Целочисленные типы данных 15

3.3. Вещественные типы данных 16

3.4. Логический тип данных 17

3.5. Символьный тип данных 17

3.6. Операции и выражения 19

Преобразования типов данных 21

Операция присваивания 23

Арифметические операции 25

Операции отношения 30

Логические операции 30

Поразрядные (битовые) операции 31

Операции составного присваивания 35

Условная операция 36

Операция sizeof 36

Приоритеты рассмотренных операций 37

3.7. Ввод и вывод простых типов данных 38

Вывод текстовых строк 39

Ввод/вывод арифметических типов данных 41

Форматирование ввода / вывода 42

4. Основные управляющие структуры программирования и управляющие конструкции в языке С++ 48

4.1. Идеи структурного программирования 49

4.2. Управляющие структуры и инструкции языка C++ 52

Условная инструкция (if) 52

52

Инструкция множественного выбора (switch) 56

Цикл с предусловием (while) 57

Цикл с постусловием (do while) 60

Итерационный цикл (for) 61

Инструкции перехода 63

5. Приемы программирования циклов 65

5.1. Рекуррентные вычисления 65

5.2. Инвариант цикла 69

6. Массивы 71

6.1. Понятие массива 71

6.2. Объявление массивов 72

Объявление одномерных массивов 72

Объявление многомерных массивов 73

6.3. Ввод-вывод массивов 74

Вывод массивов 75

Ввод массивов 75

6.4. Текстовые строки как массивы символов 76

Определение текстовой строки 76

Ввод текстовых строк с клавиатуры 77

Обработка текстовых строк 79

Массивы текстовых строк 81

7. Разработка программ при работе с массивами 81

Не успел дописать. Некоторые примеры по этому разделу в Приложениях 82

Введение

Предмет дисциплины и ее задачи. Содержание и форма проведения занятий. Связь с другими дисциплинами учебного плана.

1. Этапы и проблемы решения задач с использованием компьютера

Решение задач на компьютере. Уровни вычислительных систем: архитектура компьютера, операционные системы, методы и технологии программирования, прикладные технологии, информационные системы. Виды программного обеспечения (ПО): программа, программный комплекс, программный продукт (изделие), программная система. Основные показатели качества ПО. Жизненный цикл ПО: основные этапы и процессы, их соотношение с содержанием и видами занятий учебной дисциплины.

2. Общие сведения о языке программирования C++ и системе программирования

Языки программирования и системы программирования. История создания языков C и C++. Краткая характеристика языка C++. Структура и основные элементы программы. Классификация действий и данных. Пример программы на языке C++. Система программирования. Трансляция программ и выполнение программы. Стандарты C и C++. Системы программирования C/C++ для различных вычислительных платформ и операционных сред.

2.1. История создания языка C++

Язык C++ создавался на основе языка C и является его расширенной и улучшенной версией, в которой реализованы принципы объектно-ориентированного программирования. С++ также включает ряд других усовершенствований языка C, например расширенный набор библиотечных функций. Поэтому историю его создания следует начать с его предка.

Язык C был разработан Дэнисом Ритчи как "надстройка" над ассемблером в начале 70-х годов прошлого столетия. Язык C был предназначен для поддержки технологии структурного программирования. В 1983 году был учрежден комитет по созданию ANSI-стандарта, для обеспечения единства в различных реализациях этого языка. Конечная версия этого стандарта стала доступной для желающих в начале 1990 годов. Эта версия языка C получила название С89, и именно она явилась фундаментом, на котором был построен язык C++. Язык C многие относят к языкам "среднего" уровня, который позволяет программисту достаточно просто делать практически все, что он хочет, но за последствия этих действий в большинстве случаев ответственность ложится именно на программиста, а не на язык программирования.

Усложнение программ в конце 70-х годов привело к появлению новых технологий программирования, одной из которых является объектно-ориентированное программирование. Язык C не поддерживал эту технологию, что, в конечном итоге, и привело к разработке языка C++.

Дату рождения языка C++ относят к 1979 году, когда Бьерн Страуструп создал язык "С c классам". Свое современное название (C++) он получил в 1983 году. Язык C++ полностью включает в себя все элементы языка C, то есть программы, написанные на языке C, практически без изменений могут быть откомпилированы в системах C++. Основные новшества языка C++ связаны с поддержкой технологий объектно-ориентированного программирования.

В 1994 году был предложен стандарт языка C++. Однако вскоре, в связи с созданием Александром Степановым стандартной библиотеки шаблонов (STL), стандарт был пересмотрен в сторону существенного расширения и усложнения. Этот стандарт появился в свет в 1998 году и основным стандартом языка C++ до настоящего времени и поддерживается всеми основными современными C++ - компиляторами.

C++ является родительским по отношению к таким языкам, как Java и C#. Эти языки очень похожи, хотя и предназначены для решения задач различных категорий. Языки Java и C# предназначены, в первую очередь, для решения задач ориентированных на сильно распределенные сетевые среды. Но благодаря своей способности поддерживать многоплатформные среды эти языки теряют в своей эффективности (например, в быстродействии) по сравнению с языком C++.

2.2. Краткая характеристика языка C++