分支语句[归纳]

一、分支语句

1.if   else 语句
if语句的逻辑介绍

如图是 if 语句最简单的逻辑应用,下面代码展示注:if后面若仅跟一条语句,则后面的 {} 可加可不加,有 {} 的意思是,语句块,你若if里面的条件表达式成立,你必须把我这整个语句块的代码,都执行完,所以:若后面有多条要执行的语句,你不加 {} ,则默认第一条语句,受if语句控制;

if语句常与else语句、else if(表达式)语句搭配

目的是更好表示,多分支的情形(根本是if语句的嵌套)

例一;虽然从这张代码截图来看,有没有else语句,都不影响整个代码的逻辑,但是有else,能让我们更清晰的理解分支语句,以及表现了我们良好的代码风格,所以,你还觉得有没有else语句都无所谓吗?

例二;

左右两边的代码逻辑一致,但代码不如右边的简易。 

悬浮else语句 

以这张图的代码为例,请问程序运行的结果是什么?是haha还是hehe?。。。来看程序运行结果:

实际上,什么都不打印,为什么呢? 其实这里,只要把代码的逻辑,与对应关系处理好,就会很明白了,

首先else语句与哪个if对应?,是if( a == 1),还是if( b == 2 )?,这里很明确的告诉一个结论,else与最近的if对应。

其次if(b==2)受if(a == 1)控制,所以if(a == 1)不成立时,不进行后面的if();else();直接进行return语句;

2.switch语句
switch语句的逻辑介绍

在C语言中,除了 if 语句,可以表达分支以外,C语言也提供了switch语句来表达分支。

若要表示多分支的逻辑,用多个case即可完成。要特别注意的是,switch中的表达式必须是整型类型,case后面的则必须是整型类型的常量。下面举个例子:(输入一个数,然后打印出来对应的一周的哪一天)

我输入数字 1 时,运行的程序是:   

 我输入数字 4 时,运行的程序是:

switch语句确实通过我们输入的值,然后从哪一条case语句运行,但是它并没有运行这条case语句之后停止,而是把后面所有的case语句都运行完。为了解决这一问题,我们可以使用break这个关键字。 

我们再次输入数字1,数字四时,运行如下:

 它就不进行后面的case语句。

根据这一特性,我们可以根据我们的需要对其进行更合理的运用;

若num的值是1~5之间,则打印工作日,后跳出循环。 

default语句

default语句的作用是:若switch(),表达式的结果,不满足任意一个case时,就执行default后的语句。default的用法简单,就举个代码例子感受一下把(为了更明显看到代码运行的结果验证,我用了一个多次输入的语句)

switch中case语句与default语句的顺序问题

顺序是不作要求的,不仅仅case语句与default语句不作要求,就连多个case之间的的顺序也不做要求。

  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值