Программирование на языке С/С++

Содержание

Слайд 2

План
1. Особенности языка С++.
2. Стандарты.
3. Структура программы на языке С++.
4. Встроенные типы

План 1. Особенности языка С++. 2. Стандарты. 3. Структура программы на языке
данных.
5. Переменные.

02.09.2021

Слайд 3

02.09.2021

С++ - компилируемый язык программирования;
Парадигмы программирования: процедурное, объектно-ориентированное;
Статическая система типов данных;
Использование препроцессора

02.09.2021 С++ - компилируемый язык программирования; Парадигмы программирования: процедурное, объектно-ориентированное; Статическая система
для абстрагирования однотипных операций;
Синтаксис C++ унаследован от языка C. Совместим с C. Однако C++ не является в строгом смысле надмножеством C;

Основные особенности языка С++

Слайд 4

02.09.2021

Алфавит языка
1. Все буквы латинского алфавита.
2. Цифры: 0, 1, 2, 3, 4,

02.09.2021 Алфавит языка 1. Все буквы латинского алфавита. 2. Цифры: 0, 1,
5, 6, 7, 8, 9.
3. Специальные символы: , (запятая), ;, . (точка), +, -, *, ^, & (амперсанд), =, ~ (тильда), !, /, <, >, (, ), {, }, [, ], |, %, ?, ' (апостроф), " (кавычки), : (двоеточие), _ (знак подчёркивания), \, #.

Слайд 5

Символы служат для построения лексем. Существует пять видов лексем:
идентификаторы;
ключевые слова;

Символы служат для построения лексем. Существует пять видов лексем: идентификаторы; ключевые слова;

знаки (символы) операций; ·
литералы; ·
разделители (скобки, точка, запятая, пробел, табуляция).

02.09.2021

Ключевые слова — это зарезервированные идентификаторы, которые имеют специальное значение для компилятора.

Слайд 6

02.09.2021

02.09.2021

Слайд 7

02.09.2021

Синтаксические правила языка программирования определяются нормативными документами, которые обычно называют стандартами языка.
Стандарты

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

Слайд 8

02.09.2021

Стандарты языка с++

В 1985 году вышло первое издание «Языка программирования C++», обеспечивающее первое описание

02.09.2021 Стандарты языка с++ В 1985 году вышло первое издание «Языка программирования
этого языка.
В 1989 году состоялся выход C++ версии 2.0. 
C++98
С ++11
С++14
С++17
С++20

Слайд 9

02.09.2021

Программа на языке С++ строится по блочному принципу, как совокупность нескольких независимых

02.09.2021 Программа на языке С++ строится по блочному принципу, как совокупность нескольких
программных блоков-функций.

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

Функция – обособленный программный блок, реализующий собственный алгоритм функционирования, обрабатывая входные параметры и формируя как результат своей работы некоторое значение.

Слайд 10

02.09.2021

#include
int func()
{//тело функции
}
int main()
{
//тело функции
return 0;
}

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

Тело

02.09.2021 #include int func() {//тело функции } int main() { //тело функции
функции – набор инструкций (операторов) языка С++, реализующих алгоритм работы функции.

Слайд 11

02.09.2021

main() – главная функция программы, она обязательно должна быть.


Выполнение программы всегда

02.09.2021 main() – главная функция программы, она обязательно должна быть. Выполнение программы
начинается с первого оператора функции main. Когда будет выполнена последняя инструкция этой функции, программа завершит свою работу.

Тело функции заключается в { }, которые выполняют роль операторных скобок (аналогично begin и end в языке Pascal)

Слайд 12

Для функции main используется тип возвращаемого значения int


Это означает, что в

Для функции main используется тип возвращаемого значения int Это означает, что в
результате своей работы программа должна сформировать и вернуть вызывающей программе целочисленное значение – код статуса своего завершения .
Вызов оператора return 0 завершает программу с кодом 0, что общепринято означает успешное завершение работы программы

int main()
{//тело функции
return 0;
}

02.09.2021

Слайд 13

int main()
{
//тело функции
return 0;
}

Внешний уровень программы

Внешний уровень программы включает те ее части,

int main() { //тело функции return 0; } Внешний уровень программы Внешний
которые лежат вне какой-либо функции

На внешнем уровне программы могут находиться инструкции: директивы препроцессора, определения и описания новых типов данных и объектов, комментарии.

02.09.2021

Слайд 14

Структура простой программы на языке С++

На внешнем уровне программы нельзя помещать операторы

#include

Структура простой программы на языке С++ На внешнем уровне программы нельзя помещать

int x=0;
int main()
{
x=x+10;
cout<return 0;
}

#include
int x;
x=x+10; //Ошибка
int main()
{
cout<return 0;
}

02.09.2021

Слайд 15

02.09.2021

#include
using namespace std;
int main()
{
cout << "Hello World!\n";
return 0;
}

02.09.2021 #include using namespace std; int main() { cout return 0; }

Слайд 16

02.09.2021

Инструкция using namespace std представляет собой команду для использования стандартного пространства имен

02.09.2021 Инструкция using namespace std представляет собой команду для использования стандартного пространства
std.

Пространство имен — это некое абстрактное хранилище, позволяющее избегать конфликта имен. При составлении программного кода нам необходимо указать, какое именно пространство имен будет использовано для «хранения» названий создаваемых в программе утилит.

Слайд 17

Комментарии

В текст программы можно добавлять комментарии. Текст комментария не подчиняется синтаксису языка

Комментарии В текст программы можно добавлять комментарии. Текст комментария не подчиняется синтаксису
С++.

Назначение комментария – пояснить некоторый фрагмент программы, хорошим стилем считается наличие 1 комментария на 10 строк кода

Комментарий до конца строки:
//текст комментария

Sum=Sum+Price; //увеличиваем сумму на величину Price

02.09.2021

Слайд 18

Комментарии

Многострочные комментарии выделяются символами /* и */.
Текст, заключённый в служебные символы

Комментарии Многострочные комментарии выделяются символами /* и */. Текст, заключённый в служебные
/* и */ (в этом порядке), полностью игнорируется компилятором.

02.09.2021

Слайд 19

Препроцессор и директивы

Препроцессор С++ — программа, подготавливающая код программы на языке C++

Препроцессор и директивы Препроцессор С++ — программа, подготавливающая код программы на языке
к компиляции.
Директивы препроцессора представляют собой инструкции, записанные в тексте программы на С++, и выполняемые до трансляции программы. Директивы начинаются с символа # и не заканчиваются точкой с запятой.

02.09.2021

Слайд 20

Несколько ключевых слов:
define — создание константы или макроса;
undef — удаление константы или

Несколько ключевых слов: define — создание константы или макроса; undef — удаление
макроса;
include — вставка содержимого указанного файла.

02.09.2021

Слайд 21

Стандартная Библиотека означает коллекцию классов и функций.
Стандартная Библиотека поддерживает несколько основных контейнеров, функций для работы

Стандартная Библиотека означает коллекцию классов и функций. Стандартная Библиотека поддерживает несколько основных
с этими контейнерами, объектов-функции, основных типов строк и потоков (включая интерактивный и файловый ввод-вывод).
Стандартная библиотека включает 39 заголовочных файлов (С++14), например, fstream, iostream, complex и т.д.

02.09.2021

Слайд 22

02.09.2021

Стандартная библиотека c++.

Стандартная Библиотека языка C++ также включает в себя спецификации стандарта

02.09.2021 Стандартная библиотека c++. Стандартная Библиотека языка C++ также включает в себя
ISO C90 стандартной библиотеки языка Си (24 заголовочных файла).
Пример: cmath, ctime, cstdio и т.д.
Стандартная библиотека шаблонов (STL) — подмножество стандартной библиотеки C++ и содержит контейнеры, алгоритмы, итераторы, объекты-функции и т. д.
Примеры: map, set, vector и т.д.

Слайд 23

iostream (от англ. Input/Output Stream («поток ввода-вывода»)) — заголовочный файл с классами,

iostream (от англ. Input/Output Stream («поток ввода-вывода»)) — заголовочный файл с классами,
функциями и переменными для организации ввода-вывода в языке программирования C++. Он включён в стандартную библиотеку C++.
cmath — заголовочный файл стандартной библиотеки языка программирования С++, разработанный для выполнения простых математических операций

02.09.2021

Слайд 24

9/2/2021

Лекция №15

В языке C++ для вывода информации используется специальный объект cout, для

9/2/2021 Лекция №15 В языке C++ для вывода информации используется специальный объект
ввода - cin.

Вывод-ввод информации

cout – Consol Output (вывод в консоль)
сin – Consol input (ввод в консоль)

Чтобы воспользоваться данными объектами необходимо подключить заголовочный файл .

Слайд 25

02.09.2021

Для вывода в консоль кириллицы можно воспользоваться следующими процедурами:

setlocale(LC_ALL, "Russian");

system("chcp 1251 >nul");

Если

02.09.2021 Для вывода в консоль кириллицы можно воспользоваться следующими процедурами: setlocale(LC_ALL, "Russian");
в программе предполагается ввод и вывод русского текста, то необходимо подключить заголовочный файл

SetConsoleCP(1251);
SetConsoleOutputCP(1251);

Слайд 26

02.09.2021

system("pause>nul");

Для того чтобы консоль не закрывалась сразу после выполнения программы можно воспользоваться

02.09.2021 system("pause>nul"); Для того чтобы консоль не закрывалась сразу после выполнения программы можно воспользоваться процедурой:
процедурой:

Слайд 27

02.09.2021

Основной тип объектов, хранящих данные в программе – переменная.

Переменная - это ячейка

02.09.2021 Основной тип объектов, хранящих данные в программе – переменная. Переменная -
в памяти компьютера, которая имеет имя, тип и хранит некоторое значение.
Значение переменной может меняться во время выполнения программы. При записи в ячейку нового значения старое стирается.

Слайд 28

02.09.2021

Тип переменной определяет:
Размер ячейки памяти в байтах.
Интерпретацию двоичного кода.
Допустимые операции.
Процесс проверки и

02.09.2021 Тип переменной определяет: Размер ячейки памяти в байтах. Интерпретацию двоичного кода.
накладывания ограничений на типы используемых данных называется контролем типов или типизацией программных данных.

Слайд 29

02.09.2021

Различают следующие виды типизации:
Статическая типизация — переменная связывается с типом в момент

02.09.2021 Различают следующие виды типизации: Статическая типизация — переменная связывается с типом
объявления и тип не может быть изменён позже.
Динамическая типизация — приём, используемый в языках программирования, при котором переменная связывается с типом в момент присваивания значения, а не в момент объявления переменной.
Язык С++ поддерживает статическую типизацию, и типы всех используемых в программе данных должны быть указаны перед ее компиляцией.

Слайд 30

02.09.2021

Различают: простые (встроенные), составные и прочие типы данных.
Простые: целочисленные, с плавающей точкой

02.09.2021 Различают: простые (встроенные), составные и прочие типы данных. Простые: целочисленные, с
(вещественные), символьные, логические.
Составные (сложные) данные:
Массив — индексированный набор элементов одного типа.
Строковый тип — массив, хранящий строку символов.
Пользовательские типы данных (структуры, классы и т.д.) .
Другие типы данных:
Указатель — хранит адрес в памяти компьютера, указывающий на какую-либо информацию, например, указатель на переменную.

Слайд 31

02.09.2021

Основные типы данных в C++
int — целочисленный тип данных.
float — тип данных с плавающей запятой.
double — тип данных с

02.09.2021 Основные типы данных в C++ int — целочисленный тип данных. float
плавающей точкой двойной точности.
char — символьный тип данных.
bool — логический тип данных.

Слайд 32

02.09.2021

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

02.09.2021 Целочисленные типы данных

Слайд 33

02.09.2021

Модификатор типа – специальное ключевое слово, которое указывается перед идентификатором типа и

02.09.2021 Модификатор типа – специальное ключевое слово, которое указывается перед идентификатором типа
влияет на размер памяти, выделяемой для переменной данного типа.
Модификаторы:
signed (числовое значение со знаком);
unsigned (числовое значение без знака);
long (расширение диапазона);
short (сокращение диапазона).

Слайд 34

02.09.2021

Узнать, сколько байт выделяется для значений определенного типа или для какой-то определенной

02.09.2021 Узнать, сколько байт выделяется для значений определенного типа или для какой-то
переменной, можно с помощью оператора sizeof.
Пример:

cout << sizeof(unsigned) << endl;//4

Слайд 35

02.09.2021

Синонимы целочисленных типов данных:
short, short int, signed short, signed short int
unsigned short, unsigned short int
int, signed, signed int
unsigned, unsigned

02.09.2021 Синонимы целочисленных типов данных: short, short int, signed short, signed short
int
long, long int, signed long, signed long int
unsigned long, unsigned long int
long long, long long int, signed long long, signed long long int
unsigned long long, unsigned long long int

Целочисленные типы можно определять в битах: _int8, _int16, _int32, _int64.

Слайд 36

02.09.2021

Любую переменную, которая будет использована в программе, необходимо объявлять.
Определяя новую переменную в

02.09.2021 Любую переменную, которая будет использована в программе, необходимо объявлять. Определяя новую
программе, программист должен присвоить ей идентификатор.
Идентификатор — это имя переменной, функции, класса или другого объекта в языке C++.

Слайд 37

02.09.2021

Верные идентификаторы: x, Sum1, _Count, F_I_O

Недопустимые идентификаторы: Sum$, Сумма, My Summ, 1Sum.

В

02.09.2021 Верные идентификаторы: x, Sum1, _Count, F_I_O Недопустимые идентификаторы: Sum$, Сумма, My
языке С++ идентификатор может состоять из латинских букв (не более 32-х), арабских цифр и символа подчеркивания “_”, при этом он не может начинаться с цифры.
Можно использовать верхний и нижний регистр.

Слайд 38

02.09.2021

Примеры :
int x;
int main()
{ short y, z;

}
long c;

Объявление переменной предполагает указание

02.09.2021 Примеры : int x; int main() { short y, z; …
имени переменной и ее типа (int и т.п.). Если при объявлении переменной одновременно выделяется память под нее, то происходит определение переменной.
В приведенных примерах переменные объявляются и определяются.

Слайд 39

02.09.2021

В программе переменная объявляется в любом месте (но до первого ее использования).

02.09.2021 В программе переменная объявляется в любом месте (но до первого ее

Область доступности переменной определяется блоком, в котором она объявлена. Блок, в свою очередь, ограничивается парой фигурных скобок.
Если переменная объявлена в главной функции программы, она доступна в любом месте главной функции.

Слайд 40

02.09.2021

В C++ точка, в которой объявлено имя, является точкой, в которой он

02.09.2021 В C++ точка, в которой объявлено имя, является точкой, в которой
становится видимым для компилятора.
Нельзя ссылаться на переменные, объявленные в более поздней точке в единице компиляции.
Переменные должны быть объявлены как можно ближе до точки, в которой они используются.

Слайд 41

02.09.2021

Инициализация переменной происходит когда в переменную записывается первое значение.

1) Копирующая инициализация

int

02.09.2021 Инициализация переменной происходит когда в переменную записывается первое значение. 1) Копирующая
y=8;

int y;//неопределенное значение, если инициализировать в главной функции
y=10;// копирующее присваивание

2) Инициализация по умолчанию

3) Прямая инициализация с помощью круглых скобок ()

int x(4);

Слайд 42

02.09.2021

4) uniform-инициализация

int x{4};

short x{};

Инициализация переменной с пустыми фигурными скобками указывает на инициализацию

02.09.2021 4) uniform-инициализация int x{4}; short x{}; Инициализация переменной с пустыми фигурными
по умолчанию (переменной присваивается 0).

В uniform-инициализации есть преимущество: нельзя присвоить переменной значение, которое не поддерживает её тип данных — компилятор выдаст предупреждение или сообщение об ошибке.

Слайд 43

02.09.2021

Тип данных с плавающей точкой

02.09.2021 Тип данных с плавающей точкой

Слайд 44

02.09.2021

Примеры создания переменных типа данных с плавающей точкой

double pi=3.14;

float x;
x = -5.2;

long

02.09.2021 Примеры создания переменных типа данных с плавающей точкой double pi=3.14; float
float y=4.9;

Модификаторы short, unsigned и signed для типа данных с плавающей точкой не используются.

Слайд 45

02.09.2021

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

Тип данных char используется для хранения символа (управляющего или печатного)

02.09.2021 Символьный тип данных Тип данных char используется для хранения символа (управляющего
в определенной системе кодировки.
Как правило, в таких переменных хранят символ из таблицы ASCII.

При инициализации переменной типа char символ заключается в апострофы

char y='d';

Пример:

Слайд 46

02.09.2021

Для представления символов в C++ типу данных char отводится один байт. Таким

02.09.2021 Для представления символов в C++ типу данных char отводится один байт.
образом, можно хранить в переменных символьного типа до 256 значений.

Каждому символу соответствует определённое число из диапазона [0, 255].

Слайд 47

02.09.2021

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

Переменные логического типа могут принимать только два значения: true(истина) и

02.09.2021 Логический тип данных Переменные логического типа могут принимать только два значения:
false(ложь).
Если присвоить логической переменной число 0, то переменная принимает значение false.
Если логической переменной присвоить любое отличное от нуля число, то она примет значение true.

bool y=true;

bool z=false;

При выводе в консоль переменная y примет значение 1, переменная z значение 0.

Слайд 48

02.09.2021

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

Переменные логического типа могут принимать только два значения: true(истина) и

02.09.2021 Логический тип данных Переменные логического типа могут принимать только два значения:
false(ложь).
Если присвоить логической переменной число 0, то переменная принимает значение false.
Если логической переменной присвоить любое отличное от нуля число, то она примет значение true.

Слайд 49

02.09.2021

Чтобы в консоли было выведено значение false или true необходимо перед потоком

02.09.2021 Чтобы в консоли было выведено значение false или true необходимо перед
вывода поставить флаг boolalpha

bool y=false;
cout << boolalpha;
cout << y << '\n';

Слайд 50

Константы – еще один тип объектов, способных хранить данные в программе.

Также как

Константы – еще один тип объектов, способных хранить данные в программе. Также
и переменные, константы имеют тип, идентификатор, но значения констант нельзя изменить.

Определение констант в программе:

Константы

const имя_типа идентификатор1 = конст.выражение1 [, идентификатор2 =конст. выражение2] [,…] ;

02.09.2021

Имя файла: Программирование-на-языке-С/С++.pptx
Количество просмотров: 34
Количество скачиваний: 0