Базовый вводный курс по C++ (2)

3 оператора

Функции: операции, используемые для выполнения кода
В этой главе мы в основном объясняем следующие типы операторов:

Тип оператора Функция
Арифметические операторы используются для обработки четырех арифметических операций
Операторы присваивания используются для присвоения значения выражения переменной
Используются операторы сравнения в выражениях и возвращают истинное или ложное значение
Логические операторы используются для возврата истинного или ложного значения в зависимости от значения выражения

3.1 Арифметические операторы

Функция: используется для обработки четырех арифметических
операций К арифметическим операторам относятся следующие
символьные операторы . - 5 5 //




Умножение на 10 * 5 50
/// Деление на 10 / 5 2
//% Модуль (остаток) 10 % 3 1
//++ Предварительное приращение a=2;b=++a;a= 3; b=3;
//++ постинкремент a=2; b=a++; a=3; b=2;
//– предекремент a=2; b=–a; a=1; b= 1;
//– постдекремент a=2; b=a–; a=1; b=2;
*
Пример 1:

//加减乘除
int main() 
{
    
    
	int a1 = 10;
	int b1 = 3;
	cout << a1 + b1 << endl;
	cout << a1 - b1 << endl;
	cout << a1 * b1 << endl;
	cout << a1 / b1 << endl;  //两个整数相除结果依然是整数
	int a2 = 10;
	int b2 = 20;
	cout << a2 / b2 << endl; 
	int a3 = 10;
	int b3 = 0;
	//cout << a3 / b3 << endl; //报错,除数不可以为0
	//两个小数可以相除
	double d1 = 0.5;
	double d2 = 0.25;
	cout << d1 / d2 << endl;
	system("pause");
	return 0;
}

Резюме: в операции деления делитель не может быть равен 0.
Пример 2:

//取模
int main() 
{
    
    
	int a1 = 10;
	int b1 = 3;
	cout << 10 % 3 << endl;
	int a2 = 10;
	int b2 = 20;
	cout << a2 % b2 << endl;
	int a3 = 10;
	int b3 = 0;
	//cout << a3 % b3 << endl; //取模运算时,除数也不能为0
	//两个小数不可以取模
	double d1 = 3.14;
	double d2 = 1.1;
	//cout << d1 % d2 << endl;
	system("pause");
	return 0;
}

Резюме: Только целочисленные переменные могут выполнять операции по модулю
Пример 3:

//递增
int main() 
{
    
    
	//后置递增
	int a = 10;
	a++; //等价于a = a + 1
	cout << a << endl; // 11
	//前置递增
	int b = 10;
	++b;
	cout << b << endl; // 11
	//区别
	//前置递增先对变量进行++,再计算表达式
	int a2 = 10;
	int b2 = ++a2 * 10;
	cout << b2 << endl;
	//后置递增先计算表达式,后对变量进行++
	int a3 = 10;
	int b3 = a3++ * 10;
	cout << b3 << endl;
	system("pause");
	return 0;
}

Резюме: Преинкремент сначала выполняет ++ над переменной, а затем вычисляет выражение, а постинкремент наоборот

3.2 Операторы присваивания

Функция: Используется для присваивания значения выражения переменной.Оператор
присваивания включает следующие символы: оператор

термин пример результат
= присваивание a=2; b=3; a=2; b=3;
+= plus is равно а=0;а+=2;а=2;
-=вычитание равно а=5;а-=3;а=2;
=умножение равно а=2;а =2;а=4;
/= деление равно а=4; а/=2; а=2;
%= по модулю равно а=3; а%2; а=1;

Пример:

int main()
 {
    
    
	//赋值运算符
	// =
	int a = 10;
	a = 100;
	cout << "a = " << a << endl;
	// +=
	a = 10;
	a += 2; // a = a + 2;
	cout << "a = " << a << endl;
	// -=
	a = 10;
	a -= 2; // a = a - 2
	cout << "a = " << a << endl;
	// *=
	a = 10;
	a *= 2; // a = a * 2
	cout << "a = " << a << endl;
	// /=
	a = 10;
	a /= 2;  // a = a / 2;
	cout << "a = " << a << endl;
	// %=
	a = 10;
	a %= 2;  // a = a % 2;
	cout << "a = " << a << endl;
	system("pause");
	return 0;
}

3.3 Операторы сравнения

Функция: используется для сравнения выражений и возврата истинного или ложного значения.
Операторы сравнения имеют следующие символы:

оператор термин пример результат
//== равно 4 == 3 0
//!= не равно 4 != 3 1
/ /< меньше 4 < 3 0
///> больше 4 > 3 1
//<= меньше или равно 4 <= 3 0
//>= больше или равно 4 >= 1 1

Пример:

int main() 
{
    
    
	int a = 10;
	int b = 20;
	cout << (a == b) << endl; // 0 
	cout << (a != b) << endl; // 1
	cout << (a > b) << endl; // 0
	cout << (a < b) << endl; // 1
	cout << (a >= b) << endl; // 0
	cout << (a <= b) << endl; // 1
	system("pause");
	return 0;
}

Примечание. В операции сравнения языков C и C++ «истина» представлена ​​цифрой «1», а «ложь» представлена ​​цифрой «0».

3.4 Логические операторы

Роль: используется для возврата истинного или ложного значения на основе значения выражения.
Логические операторы имеют следующие символы:

оператор термин пример результат
!не !а если ложно, то !а истинно, если истина, то ! ложный.
&& с a && b Результат истинен, если и a, и b истинны, и ложен в противном случае.
|| или a || b Если либо a, либо b истинны, результат верен, а когда оба ложны, результат ложен

Пример 1: Логическое НЕ

//逻辑运算符  --- 非
int main()
{
    
    
	int a = 10;
	cout << !a << endl; // 0
	cout << !!a << endl; // 1
	system("pause");
	return 0;
}

Резюме: Верно в Ложь, Ложь в Истину
Пример 2: Логическое И

//逻辑运算符  --- 与
int main() 
{
    
    
	int a = 10;
	int b = 10;
	cout << (a && b) << endl;// 1
	a = 10;
	b = 0;
	cout << (a && b) << endl;// 0 
	a = 0;
	b = 0;
	cout << (a && b) << endl;// 0
	system("pause");
	return 0;
}

Резюме: Логический оператор И. Резюме: То же самое верно, остальные ложны
Пример 3: Логическое или

//逻辑运算符  --- 或
int main() 
{
    
    
	int a = 10;
	int b = 10;
	cout << (a || b) << endl;// 1
	a = 10;
	b = 0;
	cout << (a || b) << endl;// 1 
	a = 0;
	b = 0;
	cout << (a || b) << endl;// 0
	system("pause");
	return 0;
}

Резюме логического оператора ИЛИ: одно и то же ложно ложно, остальное верно

4 Структура программы

C/C++ поддерживает самые основные три структуры программных операций: структура последовательности, структура выбора и структура цикла. Структура
последовательности: программа выполняется по порядку без переходов.
Структура выбора: в зависимости от того, выполняются ли условия, соответствующая функция выполняется выборочно.
Цикл структура: В зависимости от того, вкодопределенный
выполнить,условиевыполнено







вставьте сюда описание изображения
Оператор: if (условие) {оператор выполняется, если условие выполнено} Пример:

int main() 
{
    
    
	//选择结构-单行if语句
	//输入一个分数,如果分数大于600分,视为考上一本大学,并在屏幕上打印
	int score = 0;
	cout << "请输入一个分数:" << endl;
	cin >> score;
	cout << "您输入的分数为: " << score << endl;
	//if语句
	//注意事项,在if判断语句后面,不要加分号
	if (score > 600)
	{
    
    
		cout << "我考上了一本大学!!!" << endl;
	}
	system("pause");
	return 0;
}

Примечание: не добавляйте точку с запятой после условного выражения if
Многострочный формат if оператор: if (условие) { оператор, который будет выполнен, если условие выполнено} else{ оператор, который будет выполнен, если условие не выполнено}
вставьте сюда описание изображения
Пример :

int main() 
{
    
    
	int score = 0;
	cout << "请输入考试分数:" << endl;
	cin >> score
	if (score > 600)
	{
    
    
		cout << "我考上了一本大学" << endl;
	}
	else
	{
    
    
		cout << "我未考上一本大学" << endl;
	}
	system("pause");
	return 0;
}

Оператор if с несколькими условиями: if (условие 1) {условие 1 удовлетворяет выполненному оператору}else if(условие 2){условие 2 удовлетворяет выполняемому оператору}... else{ни одно из условий не удовлетворяет выполняемому оператору} Пример:
вставьте сюда описание изображения Пример
:

	int main() 
{
    
    
	int score = 0;
	cout << "请输入考试分数:" << endl;
	cin >> score;
	if (score > 600)
	{
    
    
		cout << "我考上了一本大学" << endl;
	}
	else if (score > 500)
	{
    
    
		cout << "我考上了二本大学" << endl;
	}
	else if (score > 400)
	{
    
    
		cout << "我考上了三本大学" << endl;
	}
	else
	{
    
    
		cout << "我未考上本科" << endl;
	}
	system("pause");
	return 0;
}

Вложенный оператор if: в операторе if оператор if может быть вложен для достижения более точного условного суждения
Пример:

int main() 
{
    
    
	int score = 0;
	cout << "请输入考试分数:" << endl;
	cin >> score;
	if (score > 600)
	{
    
    
		cout << "我考上了一本大学" << endl;
		if (score > 700)
		{
    
    
			cout << "我考上了北大" << endl;
		}
		else if (score > 650)
		{
    
    
			cout << "我考上了清华" << endl;
		}
		else
		{
    
    
			cout << "我考上了人大" << endl;
		}
		
	}
	else if (score > 500)
	{
    
    
		cout << "我考上了二本大学" << endl;
	}
	else if (score > 400)
	{
    
    
		cout << "我考上了三本大学" << endl;
	}
	else
	{
    
    
		cout << "我未考上本科" << endl;
	}
	system("pause");
	return 0;
}

4.1.2 Функция тернарного оператора
: Реализовать простое суждение через тернарный оператор Синтаксис
: выражение 1 - выражение 2:
Объяснение выражения 3:
Если значение выражения 1 истинно, выполнить выражение 2 и вернуть выражение Результат выражения 2,
если значение выражения 1 равно false, выполнить выражение 3 и вернуть результат выражения 3.
Пример:

int main() 
{
    
    
	int a = 10;
	int b = 20;
	int c = 0;
	c = a > b ? a : b;
	cout << "c = " << c << endl;
	//C++中三目运算符返回的是变量,可以继续赋值
	(a > b ? a : b) = 100;
	cout << "a = " << a << endl;
	cout << "b = " << b << endl;
	cout << "c = " << c << endl;
	system("pause");
	return 0;
}

Резюме: По сравнению с оператором if преимущество тернарного оператора заключается в том, что он короткий и аккуратный Недостаток заключается в том, что если он вложен, его структура не ясна Оператор Switch Функция: Выполнение оператора перехода с несколькими
условиями
Синтаксис
:

switch(表达式)
{
    
    
	case 结果1:执行语句;break;
	case 结果2:执行语句;break;
	...
	default:执行语句;break;
}

Пример:

int main() 
{
    
    
	//请给电影评分 
	//10 ~ 9   经典   
	// 8 ~ 7   非常好
	// 6 ~ 5   一般
	// 5分以下 烂片
	int score = 0;
	cout << "请给电影打分" << endl;
	cin >> score;
	switch (score)
	{
    
    
	case 10:
	case 9:
		cout << "经典" << endl;
		break;
	case 8:
		cout << "非常好" << endl;
		break;
	case 7:
	case 6:
		cout << "一般" << endl;
		break;
	default:
		cout << "烂片" << endl;
		break;
	}
	system("pause");
	return 0;
}

Примечание 1. Тип выражения в операторе switch может быть только целым числом или символом.
Примечание 2. Если в case нет разрыва, то программа будет продолжать выполняться вниз.
Резюме: По сравнению с оператором if структура переключателя ясно при оценке нескольких условий, эффективность выполнения высока, недостатком является то, что переключатель не может оценить интервал

4.2 Структура цикла

4.2.1 Оператор цикла while Функция
: выполнить оператор цикла, если выполнено условие цикла
Синтаксис: while (условие цикла){ оператор цикла}
Объяснение: Пока результат условия цикла верен, выполнить оператор цикла

вставьте сюда описание изображения
Пример:

int main() 
{
    
    
	int num = 0;
	while (num < 10)
	{
    
    
		cout << "num = " << num << endl;
		num++;
	}
	system("pause");
	return 0;
}

Примечание. При выполнении оператора цикла программа должна предоставлять оператор цикла
4.2.2 do...while, который выходит из
цикла Функция: Удовлетворить условию цикла, выполнить оператор цикла
Синтаксис: условие);
Примечание: отличие от while Причина в том, что do...while сначала выполнит оператор цикла, а затем определит условие цикла.

вставьте сюда описание изображения
Пример:

int main() 
{
    
    
	int num = 0;
	do
	{
    
    
		cout << num << endl;
		num++;
	} while (num < 10);
	system("pause");
	return 0;
}

Резюме: Отличие от цикла while заключается в том, что do...while выполняет оператор цикла один раз, а затем оценивает условие цикла
4.2.3 для оператора цикла . Функция
: Удовлетворяет условию цикла, выполняет оператор цикла.
; выражение условия; конец тела цикла) { оператор цикла; }
Пример:

int main() 
{
    
    
	for (int i = 0; i < 10; i++)
	{
    
    
		cout << i << endl;
	}
	system("pause");
	return 0;
}

Примечание: Выражения в цикле for должны быть разделены точкой с запятой.Обзор
: while, do…while и for — все это часто используемые операторы цикла в разработке.Структура цикла for относительно ясна, и он используется чаще.

4.2.4
Пример вложенного цикла:

int main() 
{
    
    
	//外层循环执行1次,内层循环执行1轮
	for (int i = 0; i < 10; i++)
	{
    
    
		for (int j = 0; j < 10; j++)
		{
    
    
			cout << "*" << " ";
		}
		cout << endl;
	}
	system("pause");
	return 0;
}

# 4.3 Оператор перехода
4.3.1 Оператор break
Функция: Используется для выхода из структуры выбора или структуры цикла
Когда использовать break:
появляется в условном операторе switch, функция заключается в завершении случая и выходе из switch
Появляется в оператор цикла, функция состоит в том, чтобы выйти из текущего оператора цикла Операторы цикла
появляются во вложенных циклах, выходя из ближайшего оператора внутреннего цикла
Пример 1:

int main() 
{
    
    
	//1、在switch 语句中使用break
	cout << "请选择您挑战副本的难度:" << endl;
	cout << "1、普通" << endl;
	cout << "2、中等" << endl;
	cout << "3、困难" << endl;
	int num = 0;
	cin >> num;
	switch (num)
	{
    
    
	case 1:
		cout << "您选择的是普通难度" << endl;
		break;
	case 2:
		cout << "您选择的是中等难度" << endl;
		break;
	case 3:
		cout << "您选择的是困难难度" << endl;
		break;
	}
	system("pause");
	return 0;
}

Пример 2:

int main() 
{
    
    
	//2、在循环语句中用break
	for (int i = 0; i < 10; i++)
	{
    
    
		if (i == 5)
		{
    
    
			break; //跳出循环语句
		}
		cout << i << endl;
	}
	system("pause");
	return 0;
}

Пример 3:

int main() 
{
    
    
	//在嵌套循环语句中使用break,退出内层循环
	for (int i = 0; i < 10; i++)
	{
    
    
		for (int j = 0; j < 10; j++)
		{
    
    
			if (j == 5)
			{
    
    
				break;
			}
			cout << "*" << " ";
		}
		cout << endl;
	}
	system("pause");
	return 0;
}

4.3.2 Оператор Continue Функция
: В операторе цикла пропустить оставшиеся невыполненные операторы в этом цикле и продолжить выполнение следующего цикла
Пример:

int main() 
{
    
    
	for (int i = 0; i < 100; i++)
	{
    
    
		if (i % 2 == 0)
		{
    
    
			continue;
		}
		cout << i << endl;
	}
	system("pause");
	return 0;
}

Примечание: continue не прерывает весь цикл, но break выходит из цикла
4.3.3 Оператор goto
Функция: Вы можете безоговорочно перейти к оператору Синтаксис
: тег goto
Объяснение: Если имя тега существует, когда оператор goto выполняется, он перейдет к отмеченному местоположению
. Пример:

int main() 
{
    
    
	cout << "1" << endl;
	goto FLAG;
	cout << "2" << endl;
	cout << "3" << endl;
	cout << "4" << endl;
	FLAG:
	cout << "5" << endl;
	system("pause");
	return 0;
}

Примечание: Не рекомендуется использовать оператор goto в программе, чтобы не вызвать путаницы в ходе выполнения программы
Конец этой главы!

Guess you like

Origin blog.csdn.net/fjj2397194209/article/details/131301162