Структура программы С++
Каждая подпрограмма имеет структуру, подобную функции main ();
Каждая программа содержит одну или несколько функций;
Каждая функция содержит 4 основных элемента:
1. тип возвращаемого значения; Int
2. имя функции; main()
3. список параметров, {return 0;} -
заключённый в круглые скобки
4. тело функции
#include
using namespace stg; //директива означ.что все определённые ниже имена будут отн-ся к пространству имён std
Int main() //имя функции,кот.не содержит параметров и должна возвращать значение типа Int
{Int a,b; //объявление двух переменных типа Int - целый тип
cout <<”введите два целых числа”<
<< - операция помещения данных в выходной поток;
endl - манипулятор, переводит сообщение на новую сточку.
cout >>”их сумма равна”<оператор вывода
return 0;} //оператор вывода
Организация консольного – ввода/вывода данных (т.е. в режиме чёрного экрана)
целые типы данных – short, int, long и спецификаторы (signed,unsigned);
вещественные типы – float, double, long double;
символьные типы – char, wchar_t;
логический тип – bool, принимающий значения (true-истина, false-ложь);
Константы (const)
a=b+2,5 //неименованная константа;
‘1L’ - целочисленный литерал (тип long);
“8” – целочисл.литерал (тип Int);
‘f’, – символьный литерал, ‘\n’-конец строки
Формат описания именованной константы:
[<класс памяти>]const <тип> <имя именован-ой константы>=<выражение>;
const int l= - 124;
const floak k1=2,345, k=1/k1
Стандартные типы данных
Формат описания переменных:
[<класс памяти>]<тип><имя>[=<выражение> | (<выражение>)];
Пример:
int I,j;
double x;
Значение переменных должно быть определено с помощью:
1. оператора присваивания: int a; //описание переменной
int= a; //опред.значения.переменной
2. оператора ввода: int a; //описание переменной
cin>>a; //опред.знач.переменной
3. инициализация – опред.значения переменной на этом этапе описания.
int i=100 //инициализация копией
int i (100); // прямая инициализация
Переменные
Сущ.три аспекта оформления значения с плавающей запятой которыми можно управлять:
- точность( кол-во отображаемых цифр), изменяется с помощью манипулятора setprecision;
- форма записи (десятичная или экспонец-ая);
- указание десятичной точки для значения с пл.запятой, являющихся целыми числами .
#include
#include
using namespace std; 12345.7
int main() 12345.6789
{ double i=12345,6789;
cout << setprecision(3)< cout << setprecision(6)< cout << setprecision(9)<refurn 0;}
(для использования манипуляторов endl с аргументами требуется подключить заголовочный файл iomanip)
Управление форматом вещественных типов данных
Используются манипуляторы:
1. left – выравнивает вывод по левому краю;
2. right – выравнивает вывод по правому краю;
3. internal – контролирует размещение отрицательного значения: выравнивает знак по левому краю, а значение по правому, заполняя пространство между ними пробелами;
4. setprecision(int w) – устанавливает max кол-во цифр в дробной части для вещественных чисел;
5. setw(int w) – устанавливает max ширину поля вывода;
Пример: Получим:
#include
#include
using nanespace std; 3. Ivanov;
int main()
{ cout <<“1” <
Управление размещение данных на экране
Операции. Унарные операции
Операции увеличения (декремента) и уменьшения (инкремента)
на 1(++ и --); записываются в двух формах:
Префиксия – операция записывается перед операндом и увеличивает свой операнд на 1 и возвращает изменённоё значений как результат
Постфиксия – операция записывается после операндa, уменьшает свой операнд на 1 и возвр.изменённое знач.как результат.
Пример:
#include
int main()
using nanespace std;
{ int x=3, y=4;
cout <<++x<<“\t”<<--y<
Операции отрицания (-,!)
(-) - унарный минус – изменяет знак операнда целого или вещественного типа на противоположный;
(!) – логическое отрицание, даёт в результате значение 0(ложь), если операнд отличен от 0(истина),если равен операнд 0 (ложь);
тип опeранда может быть любой.
Пример:
#include
using nanespace std;
{ int x=3, y=0;
bool f=false, v=true;
cout <<-x<<“\t”< cout <<-y<<“\t”< cout <
Арифметические операции: умножение.(*), деление.(/), остаток от деления.(%); слож.(+), вычит.(-)
Рассмотрим операции деления и остаток от деления:
#include
int main()
{ cout <<100/24<<“\t”<<100/24<
- Операции отрицания (-,!) унарный минус – изменяет знак операнда целого или вещест-го типа на противоположный.
- Операции отношения: (<, <=, >, >=, == !=), меньше, меньше или равно, больше, больше или равно, равно, не равно, не равно соответственно).
Результатом операций являются значения true, false.
Бинарные операции
Логические операции (&& и ||)
И (&&) - возвращает значение истина тогда и только тогда, когда оба операнда принимают значение истина, в противном случае операция возращ.знач.ложь.
ИЛИ || - возвращает знач.истина тогда и.т.тогда, когда хотя бы один операнд принимает значение истина, в противном случае –ложь
логические операции выполняются слева направо;
приоритет операции && выше ||.
Пример:
#include
int main()
{ cout <<‘x\t y\t &&\t||’endl;
cout <<“0\t 1\t”<<(0 && 1)<<‘\t’<<(0||1)endl;
cout <<‘0\t 1\t’<<(0 && 1)<<\t’<< (0||1)endl;
cout <<‘1\t 0\t’<<(1 && 0)<<‘\t’<<(1||0)endl;
cout <<‘1\t 1\t’<<(1 && 1)<<‘\t’<<(1||1)endl;
return 0;}
формат операция простого присваивания (=):
опреанд_1 = операнд_2
пример: a=b=c=100, это выражение выполняется справа налево, результатом выполнения с=100, является число 100, которое затем присвоиться переменной b, потом а.
Сложные операции присваивания:
(*=) – умножение с присв-ем,
( /=) - деление с присв-ем
(%= ) - остаток от деления с присв-ем,
(+=) –сложение с присв.,
(-=) - вычит.с присв.
пример: к операнду _1 прибавляется операнд_2 и результат записывается в операнд_2
т.е. с = с + а, тогда компактная запись с += а
Операции присваивания
Условная операция (? : )
Формат условной операции: операнд_1 ? операнд_2 ? : операнд_3
Операнд_1 это логическое или арифметич-ое выражение;
Оценивается с точки зрения эквивалентности константам true и false;
Если результат вычисления операнда_1 равен true,то результат условной операции будет значение операнда_2, иначе операнда_3;
Тип может различаться;
Условная операция является сокращ. формой услов-го оператора if;
Пример: Результат:
#include
int main() 11
using nanespace std; 11
{ int x, y,max;
cin >>x>>y;
(x>y)? cout <
cout<
Тернарная операция
Программа на языке С++ состоит из последовательности операторов, каждый из них определяет значение некоторого действия;
Все операторы разделены на 4 группы:
- операторы следования;
- операторы ветвления;
- операторы цикла;
- операторы передачи управления.
Операторы С++
© ООО «Знанио»
С вами с 2009 года.