10分钟让你了解分支与循环(1)
if语句
1.if

在C语言中,0为假,非0表示真
如果表达式结果是0,则语句不执行
如果表达式不是0,则语句执行

2.else
if......else......

3.分支中包含多条语句
默认if和else语句中默认都只控制一条语句
#include <stdio.h>
int main()
{
Int age = 0;
scanf ("%d,&age");
if(age>=18)
printf("成年了");
printf("可以谈恋爱了!");
return 0;
}
上面的是错误代码,无论输入的>18还是<=18都会显示"成年了"
这是因为if语句只能控制⼀条语句,就是printf("成年了\n"); ,if语句为真,则打印成年了,if语句为假,不打印,对于printf("可以谈恋爱了\n"); 是独⽴存在的,不管if语句的条件的真假,都会被执⾏。那如果我们if语句同时控制2条语句,怎么办呢?那就要使⽤else 后也可以跟上⼤括号。如下:

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

5.悬空else问题
如果存在多个if和else,记住else总是和最近的if匹配。

小甄建议:多多使用大括号使代码逻辑更加清晰,可读性更高,减少出错几率。
关系操作符
六个关系表达式:
>大于运算符
<小于运算符
>=大于等于运算符
<=小于等于运算符
== 相等运算符
!=不相等运算符
C语言中,0表示假,非0表示真。比如:20>15为真,返回1;17>20为假,返回0
关系式常用于if 或 while 结构。
例:
if (x == 3)
{
printf("x is 3\n");
}
注意:相等运算符==与赋值运算符是两个不同运算符,不要混淆!
我们可以养成这样的习惯,把程序员喜欢的变量写在等号右边。

注意:避免错误:多个关系运算符不宜连续应用。
例:i<j<k
上⾯⽰例中,连续使⽤两个⼩于运算符。这是合法表达式,不会报错,但是通常达不到想要的结果,
即不是保证变量 j 的值在 i 和 k 之间。因为关系运算符是从左到右计算,所以实际执⾏的是下⾯的表达式:
(I<j)<k
上面式子中,i<j返回值是0或者1,所以最后是0或者1 与变量k进行比较。
正确写法:
i<j&&j<k

条件操作符
条件操作符又称三目操作符,需要接受三个操作数。
例:
exp1 ? exp2 : exp3
条件操作符计算逻辑:
如果exp1为真,exp2计算得出结果是整个表达式结果;
如果exp2为假,exp3计算得出结果是整个表达式结果。

逻辑操作符:&&,||,!
逻辑操作符提供判断功能,用于构建更复杂的表达式,主要有下面三个运算符。
!:逻辑取反运算符(改变单个表达式的真假)。
&&:逻辑与运算符,并且的意思(两侧同真则真,同假则假)。
||:逻辑或运算符,或者的意思(两侧有一个是真,就是真,否则为假)。
1.逻辑取反运算符!

2.逻辑与运算符&&
3.逻辑或运算符||
4.小练习:闰年的判断
5.短路
更多推荐



所有评论(0)