3、程序流程结构

顺序结构:按顺序执行,不发生跳转
选择结构:依据条件是否满足,有选择的执行相应功能
循环结构:依据条件是否满足,循环多次执行某段代码

1. 选择结构

1、if语句
作用:执行满足条件的语句
三种形式:

单行格式if语句:if (条件) { 条件满足执行的语句}

true
false
开始
判断条件
执行语句
结束

多行格式if语句:if(条件{ 条件满足执行的语句 }else{ 条件不满足执行的语句 }

true
false
开始
判断条件
执行语句1
执行语句2
C

多条件的if语句:if(条件1){ 条件1满足执行的语句 }else if(条件2){条件2满足执行的语句}... else{ 都不满足执行的语句 }

true
false
true
false
true
false
true
false
开始
判断条件1
执行语句1
判断条件2
执行语句2
.......
.......
判断条件n
执行语句n
执行语句n+1
C

嵌套if语句:达到更精准的条件判断

2、三目运算符表达式1 ? 表达式2 : 表达式3
解释:
如果表达式1的值为真,执行表达式2,并返回表达式2的结果;
如果表达式1的值为假,执行表达式3,并返回表达式3的结果;

int a = 10;
int b = 20;
int c = 0;
c = (a > b ? a : b);

在C++中三目运算符返回的是变量,可以继续赋值

(a > b ? a : b) = 100;

返回b的变量,所以b被赋值为100;

3、switch语句
执行多条件分支语句

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

switch如果不加break,程序会一直向下执行。

if和switch区别:
1、switch缺点:判断的时候只能是整型或者浮点型,不可以是一个区间
2、switch优点:结构清晰,执行效率高

2. 循环结构

1、while循环语句
作用:满足循环条件,执行循环语句
语法:while(循环条件){ 循环语句 }
循环条件的结果为真,执行循环语句

true
false
开始
循环条件
执行语句
结束

生成随机数:

rand()%n //生成0~(n-1)之间的随机数
rand()%n+1 //生成1~n之间的随机数

1、

#include <ctime> //添加time系统时间头文件

2、

srand((unsigned int)time(NULL)); //添加随机数种子,作用:利用当前系统时间生成随机数,防止每次随机数都一样

3、

int num = rand() % 100 + 1; //系统生成1~100的随机数

break;可以利用该关键字来推出当前循环

2、do…while循环语句
语法:do{ 循环语句 } while{循环条件};
与while的区别在于do…while会先执行一次循环语句,再判断循环条件。
在这里插入图片描述

3、for循环语句
语法:for(起始表达式;条件表达式;末尾表达式) {循环语句;}

执行顺序:
0、起始表达式 (只执行一次)
循环:
1、条件表达式
2、循环表达式
2、末尾表达式

4、嵌套循环

3. 跳转语句

1、break语句

作用:用于跳出选择结构或者循环结构

使用的时机:
出现在switch条件语句中,作用是终止case并跳出switch
出现在循环语句中,作用是跳出当前循环语句
出现在嵌套循环中,跳出最近的内层循环语句

2、continue语句
作用:在循环语句中,跳过本次循环中余下尚未执行的语句,继续执行下一次循环。

3、goto语句
作用:无条件跳转代码
语法:goto 标记;
解释:如果标记的名称存在,执行到goto语句时,会跳转到标记的位置(用来跳出多层循环)
例:

cout<< "1、***" << endl;
goto FLAG:
cout<< "2、***" << endl;
cout<< "3、***" << endl;
FLAG:
cout<< "4、***" <<endl:

尽量不适用goto语句

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值