一、基本判断语句
C++中最基本的判断语句是if语句,它的语法格式如下:
if (条件) { // 条件成立执行的代码 }
如果条件成立,则执行if语句块中的代码,否则跳过。
还有if-else语句,它的语法格式如下:
if (条件) { // 条件成立执行的代码 } else { // 条件不成立执行的代码 }
如果条件成立,则执行if语句块中的代码,否则执行else语句块中的代码。
二、复合条件语句
有时候我们需要同时满足多个条件才能执行某段代码,这时候可以使用逻辑运算符与(&&)来连接多个条件,语法格式如下:
if (条件1 && 条件2) { // 条件1和条件2成立执行的代码 }
还可以使用或运算符(||)来连接多个条件:
if (条件1 || 条件2) { // 条件1或条件2成立执行的代码 }
三、switch语句
switch语句可以用于多路分支,它的语法格式如下:
switch (表达式) { case 值1: // 执行代码1 break; case 值2: // 执行代码2 break; // ... default: // 执行代码n break; }
表达式的值会与case后面的值进行比较,如果相等则执行对应的代码块,一般需要在每个case后面加上break语句来结束switch语句。
四、三目运算符
三目运算符相当于简化版的if-else语句,语法格式如下:
条件 ? 表达式1 : 表达式2;
如果条件成立,返回表达式1的值,否则返回表达式2的值。
五、assert断言
assert断言用于在代码中检查某些条件是否成立,如果条件不成立,则终止程序的运行。可以使用#include <cassert>头文件来使用assert函数。assert函数的语法格式如下:
assert(条件);
当条件不成立时,assert函数会输出错误信息并终止程序的运行。
示例代码:
#include <iostream> #include <cassert> using namespace std; int main() { // 基本判断语句 int a = 10; if (a > 5) { cout << "a大于5" << endl; } // 复合条件语句 int b = 3, c = 4; if (b < 5 && c > 3) { cout << "b小于5,c大于3" << endl; } // switch语句 int d = 2; switch (d) { case 1: cout << "d等于1" << endl; break; case 2: cout << "d等于2" << endl; break; default: cout << "d不是1也不是2" << endl; break; } // 三目运算符 int e = 5; string s = (e > 3) ? "e大于3" : "e小于等于3"; cout << s << endl; // assert断言 int f = 10; assert(f < 5); // 条件不成立,程序终止 return 0; }