Programmirovanie_-_1_kurs / Лекции (опорный конспект)
.pdf2.4. Структура программы C++
• Программа на языке С++ может состоять из одного или нескольких модулей
• Каждый модуль может
включать в себя:
– функции
– операторы
– описания идентификаторов
– директивы препроцессора
21
2.4.1.Функции
•Функция – это подпрограмма, реализующая некоторый алгоритм
–Принимает на вход набор параметров
–Возвращает значение заданного типа
тип_возвращаемого_значения имя_функции (тип1 параметр1, тип2 параметр2, ...)
{
...
// Описания и операторы
...
} |
|
int sum(int a, int b) |
void HelloWorld() |
{ |
{ |
return a+b; |
printf("Hello World!!\n"); |
} |
} |
•Выполнение программы начинается с главной функции main
int main() |
void main() |
{ |
{ |
... |
... |
} |
} |
22
2.4.2.Описание переменных
•Переменная – это именованная область памяти, в которой хранятся данные определенного типа
•Значение переменной может изменяться в процессе выполнения программы
[const] тип_переменной имя_переменной [= значение];
int a; double b;
int a,b,c,d;
float a=2.3; int b=10,c=20; char A='Z';
const int x=125;
23
2.4.2.1 Область видимости переменных (1)
• Под областью видимости |
• |
Локальные переменные |
|
переменной понимается |
|
– |
Объявляются внутри функции |
область программы, в которой |
|
|
или оператора |
данная переменная доступна |
|
– |
Доступны для использования |
для использования |
|
|
только в рамках той области, |
|
|
|
где они объявлены |
|
• |
Глобальные переменные |
|
|
|
– Объявляются вне тела какой- |
1) |
либо функции |
|
– Доступны в любом месте |
||
|
||
|
программы |
24
2.4.2.2. Область видимости переменных (2)
2)
3)
4) int x=5; void main()
{
cout << x; int x = 10; cout << x;
}
5)
6)
25
2.4.3.Директивы препроцессора
2.4.4.Операторы
•Директивы препроцессора – служебные инструкции, адресованные компилятору
–управляют преобразованием текста программы перед ее компиляцией
–начинаются с символа #
#include <stdio.h>
•Оператор – наименьшая автономная единица языка программирования,
обеспечивающая выполнение некоторой операции или последовательности
операций
•Основные операторы:
– |
Оператор присваивания |
void HelloWorld() |
|
– |
Операторы передачи управления |
||
{ |
|||
– |
Операторы цикла |
||
// Оператор вызывает функцию printf |
|||
– |
Условные операторы |
printf("Hello World!!!\n"); |
|
– |
Составной оператор |
} |
int sum(int a, int b)
{
int res;
res = a+b; // Оператор присваивает значение переменной res return res; // Оператор возвращает значение функции sum
}
26
2.5. Программа “Hello world”
/*
Программа Hello, world
*/
#include |
<stdio.h> |
// |
Библиотека ввода/вывода. Содержит функцию printf |
#include |
<conio.h> |
// |
Библиотека ввода/вывода. Содержит функцию getch |
// Главная функция |
main |
||
void main() |
|
|
{ |
|
|
|
printf("Hello World!!!\n"); // |
Вывожу |
на экран сообщение |
|
getch(); |
// |
Ожидаю |
нажатия на клавишу |
} |
|
|
|
27
3. Выражения и операции
•Выражение – языковая конструкция, определяющая последовательность выполнения операций над данными
•Результатом вычисления выражения является
единственное значение,
относящееся к определенному типу данных
•Выражение состоит из
операндов и операций
int a = 100-35*2; bool b = a<50;
if (a<30) a = a+10;
•Операции:
–арифметические операции
–операции сравнения
–логические операции
–побитовые логические операции
–операции сдвига
•Операции:
–унарные
–бинарные
•Операнды:
–переменная
–константа
–функция
–выражение
28
3.1.Арифметические операции
•Арифметические операции выполняются над целочисленными и вещественными операндами
•Тип результата арифметического выражения соответствует типу операндов
Операция |
Описание |
Пример выражения |
|
|
|
– |
Унарный минус |
–a |
|
|
–(10*a+b) |
|
|
|
+ |
Унарный плюс |
+a |
|
|
|
* |
Умножение |
a*10 |
|
|
10*20 |
|
|
(3+a)*(4+b) |
|
|
|
/ |
Деление |
10/3 |
|
|
10.0/3 |
|
|
|
% |
Получение остатка от деления |
10%3 |
|
|
|
+ |
Сложение |
a+b |
|
|
|
– |
Вычитание |
A–a |
|
|
|
29
3.2.Операции сравнения
•Выполняются над целочисленными и вещественными операндами
•Возвращают булевское значение: «истина» (1, true) или «ложь» (0, false)
Операция |
Описание |
Пример |
|
|
|
выражения |
|
|
|
|
|
< |
Меньше |
2<5 |
|
|
|
A<(10*b) |
|
|
|
|
|
<= |
Меньше или равно |
5<=5 |
|
|
|
a<=b |
|
|
|
|
|
> |
Больше |
a>b |
|
|
|
|
|
>= |
Больше или равно |
a>=b |
|
|
|
|
|
== |
Равно |
a==b |
|
|
|
a==b+c+d |
|
|
|
|
|
!= |
Не равно |
a!=b+c+d |
30 |
|
|
|