好的,今天我们就来总结一下上周学过的程序流程结构的相关知识
首先,什么是程序流程结构呢?我想理解这个概念并不难,可以简单打个比方,写程序就好比写文章,文章往往具备一定的叙事结构,如顺叙,倒叙,插叙等等,而程序也如此具备一定的执行程序顺序(结构)称之为程序流程结构。
程序流程结构包括顺序结构,选择结构和循环结构
顺序结构:顾名思义就是程序按照顺序从上到下执行不发生跳转,比较容易理解,不过多赘述;
重点是后面两种即选择结构和循环结构
其中选择结构就包括了if语句和switch语句,循环结构包括while循环语句,do...while循环语句,for循环语句以及嵌套循环语句
一·选择结构之if语句
if语句中又包括单行if语句,多行格式if语句,多条件的if语句以及嵌套if语句
单行if语句格式如下
if(a>100) //if括号后面不能加分号
{cout<<"文字输出" <<endl;}
案例练习:使用单行if语句制作分数分级程序
首先大致实现思路如下
1.让用户输入分数
使用cout输出告知还有cin输入
2.将分数进行分级(90分以上免修,90分以下必修大学英语a1)
这个便是主要练习单行if语句的地方按照格式可以进行如下编写
最后运行结果如下
结果没问题编写成功
不过在编写过程中也有注意事项,即if括号后面不能加分号
为什么呢?
我们就在原有程序上加入分号看有何不同
此次运行结果如下
发现问题了吗?对的加入分号之后会输出两个结果,这显然不合理。
多行格式if语句
格式如下
if(条件) {程序执行}
else{程序执行}
案例练习:
同样以上面的案例为例
多行if结构可以让其更加简洁
多条件的if语句
格式如下:
if(条件1){程序执行}
else if (条件2判断){程序执行}
...
else{程序执行}
想较于上面两种有更多种可能
案例练习:
可以增加更多条件
90分以上免修,80~90分良好,80分以下不合格
运用多条件if语句可以进行如下编写
运行结果如下
程序编写成功
if语句最后是嵌套if语句
格式如下
if(条件判断)
{程序1
if(条件判断){程序2}
}
其实就是if语句中再套入if语句,可以让输入的数据分类更加精细
运行结果如下
结果没问题。
好的,总结完if语句,我们就开始switch语句的总结
选择结构之switch语句
格式如下:
switch()
{ case 结果1:执行语句;break;//break退出当前分支
case 结果2:执行语句;break;
...
default:执行语句;break;
}
案例练习:给电影评分
评分标准:
10 ~ 9 经典
8 ~ 7 非常好
6 ~ 5 一般
5分以下 烂片
大致实现思路如下:
1.先提示观众对电影进行评分
2.对观众的评分进行评级对应
编写程序如下;
运行结果如下
不过在使用switch语句时需要注意使用break,因为case里如果没有break,那么程序会一直向下执行
如果缺少break(如下)
那么运行结果就会发生变化
而且switch语句判断时候只能是整型或者字符型,不能是区间
好了选择语句简单复习整理完毕,接下来进行循环语句。
二,循环结构
循环结构中包括while循环语句,do...while循环语句,for循环语句以及嵌套循环
while循环语句
格式如下:
while(条件){执行程序}
举例练习:输出1~10的数字
结果没问题。
这个案例比较简单,也可以加大练习难度,比如可以做一个猜数字程序
案例描述:系统随机生成一个1到100之间的数字,玩家进行猜测,如果猜错,提示玩家数字过大或过小,如果猜对恭喜玩家胜利,并且退出游戏。
我在写这个练习后还加入了次数限制;代码如下:
结果如下;
do...while循环语句
格式如下:
do{执行程序}while(条件)
与while的区别在于,do...while语句会先执行语句一次再判断条件
举例练习:输出1~10的数字
结果如下
以上的案例练习比较简单,可以加大难度进行练习
练习案例:找出水仙花数
案例描述:水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身
请利用do...while语句,求出所有3位数中的水仙花数
首先构建思路:
然后开敲
进行验证
结果没问题。
for循环语句
格式如下;
for(起始表达式;条件表达式;末尾循环体){循环语句;}
关于for循环的执行顺序如下:
可以参考上图或者参考下面文字进行理解
执行顺序:
1.起始表达式
2.条件表达式(判断)
3.循环程序
4.末尾循环体
案例练习:敲桌子
案例描述:从100开始数到数字1000, 如果数字个位含有5,或者数字十位百位含有5,或者该数字是5的倍数,我们打印敲桌子,其余数字直接打印输出。
大致思路如下:
代码如下:
运行结果如下:
注意事项:for循环中的表达式,要用分号进行分隔
终于快接近尾声了,最后是嵌套循环
嵌套循环
顾名思义就是循环套循环,外层执行一次,内层执行一周
举例练习:先进行简单的练习
输出结果如下:
再加大难度,利用嵌套循环,实现九九乘法表
代码如下:
运行结果:
结尾:好了到这里程序流程结构就总结完毕了,这周打卡完毕,咱们下周再见,886~ヾ(•ω•`)o