分支语句(条件语句)if Switch
if语句使用方法:if(判断条件)
条件为真:执行语句
else
条件为假:执行语句
注:c语言规定,0为假,1为真(-1为真)
代码:
int main()
{
int age = 0;
scanf("%d", &age);
if (0
printf("青年\n");
else
{
printf("其他\n");
}
return 0;
}
执行结果:
if条件判断的注意事项:
1、if(0
2、悬空else问题:
图中的else是与哪一个if匹配的?
else默认与距离最近的未与else匹配的if匹配
所以实际的匹配情况应该是这样的:
另外if语句默认执行接下来的一条语句,如果if语句接下来要执行多条语句,需要用{}将多条语句全部包括在内,如上图所示。
switch语句的使用方法:
switch(判断条件)
{
case:
执行语句
}
代码:
int day = 0;
scanf("%d", &day);
switch (day)
{
case 1:
printf("星期一\n");
case 2:
printf("星期二\n");
case 3:
printf("星期三\n");
case 4:
printf("星期四\n");
case 5:
printf("星期五\n");
case 6:
printf("星期天\n");
default:
printf("输入错误\n");
}
注:switch(条件判断)中的条件判断应为整型变量
default表示输入的为其他选项
代码的执行结果如下:
输入的为1本应该输出星期一,可是为什么所有选项都输出了呢?
这里我们需要用到break