一、知识了解
? ? ? ?(1)条件判断语句(分支语句):if语句、switch语句;
? ? ? ?(2)循环执行语句:for语句、while语句、do while语句;
? ? ? ?(3)转向语句:break语句、goto语句、continue语句、return语句。
二、if语句
(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语句(常用于多分支的情况)
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子句。