一、前言
控制语句用于控制程序的执行流程,以实现程序的各种结果方式,条件判断语句也叫分支语句。包含if语句和switch语句。
二、if语句
简单的说就是表达式的结果为真就执行大括号中的语句,反之执行其他表达式判断或其他语句。
语法结构有三种:
if(表达式)
{
语句;
}
if(表达式)
{
语句1;
}
else
{
语句2;
}
if(表达式1)
{
语句1;
}
else if(表达式2)
{
语句2;
}
else
{
语句3;
}
示例代码:
单if语句:
#include<stdio.h>
int main()
{
int score = 70;
if (score>=60)
{
printf("及格");
}
return 0;
}
执行结果:
if-else语句:
#include<stdio.h>
int main()
{
int score = 70;
if (score>=60)
{
printf("及格\n");
}
else
{
printf("不及格\n");
}
return 0;
}
执行结果:
多分支语句:
#include<stdio.h>
int main()
{
int score = 70;
if (score>=80)
{
printf("优秀\n");
}
else if (score >= 60)
{
printf("一般\n");
}
else
{
printf("差\n");
}
return 0;
}
执行结果:
三、switch语句
switch语句也是一种分支语句,常常用于多分支的情况。一般可以预知有固定分支的情况使用。
语法结果:
switch(整形表达式)
{
语句项1:
语句1
break;
语句项2:
语句2
break;
default:
break;
}
在switch语句中,我们没有办法直接实现分支,搭配break使用才能实现真正的分支。
如果表达式的值与所有case标签的值都不匹配的话,我们可以在语句列表中添加一条default子句,用于处理这种情况。
#include<stdio.h>
int main()
{
int day;
printf("请输入星期数:");
scanf("%d", &day);
switch (day)
{
case 1:
printf("星期一\n");
break;
case 2:
printf("星期二\n");
break;
case 3:
printf("星期三\n");
break;
case 4:
printf("星期四\n");
break;
case 5:
printf("星期五\n");
break;
case 6:
printf("星期六\n");
break;
case 7:
printf("星期日\n");
break;
default:
printf("星期错误\n");
break;
}
return 0;
}
执行程序: