C语言:条件判断语句(if、switch)

C语言:条件判断语句(if、switch)快速理解并学会运用 if 语句和 switch 语句 条件判断语句

大家好,欢迎来到IT知识分享网。

        C语言有9种控制语句,可分为三类:

1.条件判断语句(分支语句):if语句、switch语句

2.执行循环语句:while语句、for语句、do while 语句

3.转向语句:break语句、continue语句、goto语句、return语句

        C语言是一种结构化的语言,可分为顺序结构、循环结构和选择结构。

其中,if语句和switch语句可以实现选择结构,while语句、for语句、do while语句可以实现循环语句。

        具体可参考下面这篇文章:

C语言:语句——基建所需的砖石与钢筋-CSDN博客

这里介绍第一大类:

if语句和switch语句

目录

一、if语句

(一)if语句的表达式

(二)if……else

1.语法结构

2.使用例子:

(三)默认情况:if和else只控制1条语句

(四)嵌套if

1.嵌套if使用格式

(五)规则:else总是和最近的if匹配

二、switch语句

(一)表达格式

1.expression必须是整形表达式

2.case后的值,必须是整型常量表达式

三、if语句与switch语句的比较

(一)if语句:

(二)使用switch:

1.case和后边的数字之间需要有空格

2.每一个case中的代码执行完后,需要加上break才能跳出switch语句

四、switch语句中的break语句

五、switch语句中的default

(一)case位置与default位置


一、if语句

(一)if语句的表达式

C语言:条件判断语句(if、switch)

表达式成立(为真),则语句执行;表达式不成立(为假),则语句不执行。

C语言中,0表示是假,非0表示真,即表达式的结果是0,则语句不执行;表达式结果如果不是0,则语句执行。

举例:输入一个整数,判断是否为奇数。

C语言:条件判断语句(if、switch)

接下来我们思考了:如果输入的这个数,不是奇数,而是偶数呢?也就是说,如果任意输入一个整数,我们要怎么判断这个数是奇数还是偶数呢?

这里就需要if……else语句了。

(二)if……else

1.语法结构

C语言:条件判断语句(if、switch)

2.使用例子:

输入一个整数,判断是否是奇数,是则打印奇数,不是则打印偶数。

C语言:条件判断语句(if、switch)

if……else语句是一种可以用来实现选择结构的语句,是非此即彼的关系。就像人生的道路分岔口一样,一旦选择了这个方向,就只能一直走下去。

话是这么说,但凡事无绝对。只要有足够的本钱,从头再来,重新选择都不是问题。在C语言上,则表现为能够实现转向的语句,如goto语句,break语句,continue语句,return语句。这里后面会讲到。

(三)默认情况:if和else只控制1条语句

那如果,if要同时控制2条语句呢?

那就是用大括号{}将语句括起来,后面的else所控制的语句需要的话,也可以被{}括起来。

C语言:条件判断语句(if、switch)

(四)嵌套if

在if……else语句中,else可以与另一个if连用,构成多重判断。

举例:要求输⼊⼀个整数,判断输⼊的整数是0,还是正数或者负数。

C语言:条件判断语句(if、switch)

再比如:输⼊⼀个整数,如果是正数,再判断是奇数还是偶数,并输出;如果不是正数则输出:非正数。

C语言:条件判断语句(if、switch)

1.嵌套if使用格式

(1).

C语言:条件判断语句(if、switch)

(2).

C语言:条件判断语句(if、switch)

(五)规则:else总是和最近的if匹配

举例:

C语言:条件判断语句(if、switch)

运行的结果是什么呢?

其实什么都没有。

为什么?

因为else总是与最近的if相匹配,也就是else是与第二个if匹配的。但是由于第一个if条件不成立,所以接下来的if else语句执没机会执行,最终什么也不打印。如果想要else跟第一个if,那就用大括号{}括起来:

C语言:条件判断语句(if、switch)

二、switch语句

相较于if else 语句,switch 语句更加简单形象,用于判断多重结果的情况。

(一)表达格式

C语言:条件判断语句(if、switch)

根据expression的不同值,执行相应的case分支。如果找不到,就执行default分支。

注意:

1.expression必须是整形表达式

2.case后的值,必须是整型常量表达式

三、if语句与switch语句的比较

练习:输⼊任意⼀个整数值,计算除3之后的余数

(一)if语句:

C语言:条件判断语句(if、switch)

(二)使用switch:

C语言:条件判断语句(if、switch)

在使用switch语句时,需要注意:

1.case和后边的数字之间需要有空格

2.每一个case中的代码执行完后,需要加上break才能跳出switch语句

四、switch语句中的break语句

还是以C语言:条件判断语句(if、switch)为例子:

C语言:条件判断语句(if、switch)

如果case后面没有break语句,执行结果除了打印“余数是1”外,还会打印“余数是2”。

原因是,switch语句也具有分支效果,去掉case后面的break后,代码会继续往下执行,可能会执行其他case的代码,直到遇到break语句或者switch语句结束。

因此,break对于switch语句来说,能帮助后者实现分支效果。

但是,并不是每一个case都需要break。

比如这种情况:输入一个1~7的数字,其中1~5打印“工作日”,6-7打印“休息日”。

C语言:条件判断语句(if、switch)

一句话总结:实事求是地使用break。

五、switch语句中的default

在使用switch 语句的时候,如果switch 后的表达式中的值无法匹配代码中的 case 语句,这时候要不就不做处理,要不就在 switch 语句中使用default 语句。

C语言:条件判断语句(if、switch)

以上面的代码为例,如果用户输入的是8,无法与上面的任何一个case匹配,便会执行default语句。

(一)case位置与default位置

没有顺序要求。只是通常情况下放在尾巴。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/135939.html

(0)
上一篇 2025-06-30 22:33
下一篇 2025-06-30 22:45

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信