C语言/分支和循环语句(1)/if语句、switch语句、default子句

发布时间:2024年01月24日

一、知识了解

  1. .C语言中只有五种语句:表达式语句、函数调用语句、控制语句、复合语句、空语句(这次学的是控制语句)
  2. 控制语句:用于控制程序的执行流程,以实现程序的各种结构方式,他们由特定的语句定义符组成,C语言共有9种控制语句。
  3. 控制语句的结构方式:顺序结构、选择结构、循环语句(之前提到过)
  4. 控制语句分为3类:

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

? ? ? ?(2)循环执行语句:for语句、while语句、do while语句

? ? ? ?(3)转向语句:break语句、goto语句、continue语句、return语句

二、if语句

  1. 语法结构:

(1)if(表达式)(2)if(表达式)(3)if(表达式1)

? ? ? ? ? ? ?语句;? ? ? ? ? ? ? ? ? 语句1;? ? ? ? ? ? ? ? ? 语句1;??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?else? ? ? ? ? ? ? ? ? ? ? ?else if(表达式2)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?语句2;? ? ? ? ? ? ? ? ?语句2;??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?else

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 语句3;

? ? ? 2.注意:

? ? (1)如果想执行表达式后面的语句,必须要表达式为真。

? ? (2)这里的else if可以有多个。

? ? (3)一个if后面只可以有一条语句,如果想有多条语句,要用代码块,即{},一个{}就是一个代码块。

? ? (4)表达式有如果有上下两个限制,比如既要求a大于0,又要小于18,我们不可以写成0<a<18,要写成a>0&&a<18(之前提到过的并且&&)

? ? ?3.悬空else

? ? ? ? 当我们遇到多个if并且只有一个else时,如图:

else只和离他最近的那一个if组成一队,即和图中的第二个if组成一队。

三、switch语句(常用于多分支的情况)

  1. 语法结构:

switch(整型表达式)(必须是整型,比如int a,我们就在这里填a)

{

? ? ? 语句项

}

? ? ? 2.语句项

语句项是一些case语句,形式:

case?整型常量表达式(必须是整型而且是常量,比如1、2之类的,n不行,字符也是可以的因为有对应的ASCII码)

如图是一个switch语句:

switch语句会根据整型表达式的值,决定从哪里开始,这时我们遇到一个问题:

当我们输入日期为1时,就会将剩余的星期二星期三都打印出来。如果我们想只打印星期一,就要在case1打印完之后填上break。如图:

? ? ? ? 3.同样是上面的例子,如果我们想要在输入1-5时打印“weekday”,输入6、7时打印“weekend”,可以采用下面的方式:

(但是不可以用case(1-5)这种形式)

4.switch语句仅仅适用于某些情况,要视情况决定是否使用。

四、default子句

如果输入的值与所有case语句标签的值都不匹配(比如上图我们输入了一个8),这是的程序既不会终止,也不会报错,只会打印空白。如果我们不想忽略不匹配所有标签的表达式的值,我们只用在最后(还是在“{}”内部)加上一个default:即可,如图:

注意,每个switch语句中只能出现一条default子句。

文章来源:https://blog.csdn.net/wojiaowangfeng/article/details/135757057
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。