目录
分支1:if-else语句
1.if:
形式为: if(表达式)
语句;
当表达式为真(成立)时执行语句,表达式为假(不成立)时不执行。
(在c语言中,0为假,非零为真)
2.else:
形式为:if(表达式)
语句1;
else
语句2;
如以上两图的输入输出结果,
if(表达式)为真则运行后项表达式,否则运行else后的表达式。
也可多组else连用,构成:
if......
else if.......
else if......
.......
else .......
3.if-else嵌套:
if和else语句都只默认控制一条语句,如果想在if后面判定多条语句可用“{}”括起来,也可在“{}”内嵌套更多的if-else语句。
如果有多个if和else语句没有对齐不知道如何匹配时,else总是跟最近的一条if语句匹配。
基础的操作符:
1.关系操作符:
顾名思义,关系操作符是表示不同量之间的大小关系,数学中用“>” “<” “=”等符号来表示大小关系,而c语言中略有差别,主要有以下六个:
- > 大于运算符
- < 小于运算符
- >= 大于等于运算符
- <= 小于等于运算符
- == 相等运算符
- != 不相等运算符
作用与数学中的大于小于符号等一一对应,不过关系符不能连用【如三个不同的整形变量a>b>c应写为a>b && b>c(“&&”为逻辑操作符,将在后面讲)】
2.逻辑操作符:&&, ||, !
(c语言中0为假,非0为真
&&:与运算符,表并且,为双目操作符,使用方式为a&&b,&&两边都为真时才为真。
判断方向为左→右,当&&左边的表达式判定为假时,右边的表达式就跳过不进行判断。
||:或运算符,表或者,也为双目操作符,使用方式为a||b,||两边有一边为真时即为真。
判断方向也是左→右,当||左边的表达式判定为真时,右边的表达式就跳过不进行判断了。
如图,该代码的运算过程是先判定i是否小于0,发现i不小于0后再判定i是否大于5,发现i大于5即执行表达式输出i;但如果将两个条件位置交换,即变为“i > 5 || i < 0”时,判定i>5为真后就直接执行后面的表达式了,不进行i<0的判定。
!:逻辑取反运算符。比如int flag = 0;//这时flag为假,那么!flag就为真。
3.条件操作符:
又叫三目操作符,形式如下:exp1?exp2:exp3
计算逻辑是:如果exp1为真,那么exp2执行且为整个表达式的结果;如果exp1为假,那么exp3执行,计算的也是整个表达式的结果。
分支2:switch语句
switch语句用于判断条件有多个结果的语句。
switch (expression) {
case value1: statement
case value2: statement
default: statement
}
如上图,当expression的值为value1时,执行value1后的语句,为value2时,执行value2后的语句,否则执行default后的语句。
ps:
- switch后的expression必须是整型表达式
- case后的值必须是整型常量表达式
- case和后边的整型常量表达式之间必须有空格
- 每一个case语句后的表达式执行完后,需要加入break才能跳出这个switch语句
- switch语句中case语句和default语句无顺序要求,只是通常把default放最后