目录
C语言的语句可以分为以下五类:
1.表达式语句
int a = 10;
int b = 20;
int c = 0;
c = a + b;
2.函数调用语句
printf("你好\n");
3.控制语句(本篇文章详解)
4.复合语句(顾名思义,将各种语句复合在一起)
5.空语句
;
控制语句
控制语句用于控制程序的执行流程,以实现程序的各种结构方式,它们由特定的语句定义符组成,C语 言有九种控制语句。可分成以下三类:
- 条件判断语句也叫分支语句:if语句、switch语句
- 循环执行语句:do while语句、while语句、for语句
- 转向语句:break语句、goto语句、continue语句、return语句
选择语句(分支结构)
if语句
表达式为真,则执行对应语句(0为假,非0为真)
if(表达式)
语句;
if(表达式)
语句1;
else
语句2;
//多分支
if(表达式1)
语句1;
else if(表达式2)
语句2;
else
语句3;
最终只执行其中一个语句。
!!注意:以下错误示范:
这种情况下系统只会按照顺序进行逻辑判断:即首先判断18 <= age,如果为真则当作1处理,如果为假则当作0处理,然后继续进行判断。
要执行多条语句,应使用代码块 { }
#include <stdio.h>
int main()
{
if(表达式)
{
语句列表1;
}
else
{
语句列表2;
}
return 0;
}
else和离他最近的if进行匹配,和缩进没有关系。因此建议使用代码块表示。
switch语句
switch(整型表达式)
{
语句项;
}
//语句项就是一些case语句,如下:
case 整形常量表达式:
语句;
示例:
#include <stdio.h>
int main()
{
int day = 0;
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;
}
return 0;
}
注意:
- switch后面的表达式必须是整型表达式(或枚举类型),case后面的必须是必须是整型常量表达式(或枚举类型)
- 分支的入口是case,分支的出口是break
在多种条件都可以执行同样语句时,可以使用如下方法:
#include <stdio.h>
int main()
{
int day = 0;
switch(day)
{
case 1:
case 2:
case 3:
case 4:
case 5:
printf("weekday\n");
break;
case 6:
case 7:
printf("weekend\n");
break;
}
return 0;
}
default子句
如果switch中的case都不能执行,就执行default中的语句。(注意必须有break出口)
在每个 switch 语句中都放一条default子句是个好习惯,甚至可以在后边再加一个 break 。
int day = 0;
switch(day)
{
case 1:
case 2:
printf("weekday\n");
break;
case 3:
printf("weekend\n");
break;
default:
break;
}