目录
一、分支语句
1、if - else 语句
if(表达式)
{
语句块1
}
else
{
语句块2
}
2、switch 语句
switch语句的基本形式
switch (表达式)
{
case 常量表达式1:语句块1;break;
case 常量表达式2:语句块2; break;
……
case 常量表达式n:语句块n; break;
default : 语句块 n+1
}
switch语句的使用
- 每个常量表达式的值必须各不相同,否则将会出现矛盾。
- 当表达式的值与case后面的常量表达式值相等时,就执行此case后面的语句。
- switch中的表达式可以是整型、字符型表达式或枚举。
- case 常量:只起语句标号的作用。
- break语句用于强行跳出switch体,一般每个case后面应有一个break语句,default分支后的break可以省略。
- 多个case可以执行一组语句。
二、循环语句
1、for 语句
一般形式
for(expression1; expression2; expression3)
{ statements; }
执行过程
1.先求解表达式1;
2.求解表达式2,若为真,则执行循环体,然后执行步骤3;若为假,则执行步骤5;
for语句构成循环
- 表达式1可省略,但循环之前应给循环变量赋值
- 表达式2可省略,将陷入死循环
- 表达式3可省略,但在循环体中增加使循环变量值改变的语句
2、while 语句
while语句构成循环
基本形式:
while (表达式) {
statatments;
}
3、do - while 语句
do-while语句构成循环
基本形式:
do {
statatments;
} while (表达式);
4、goto 语句
int main()
{
int i = 1, sum=0;
loop:
if (i<=100) {
sum=sum+i;
i++;
goto loop;
}
printf(“%d”,sum);
return 0;
}
循环结构程序
当函数有很多个出口,使用goto把这些出口集中到一处是很方便的,特别是函数中有许多重复的清理工作的时候。理由是:
- 无条件跳转易于理解
- 可以减少嵌套
- 可以避免那种忘记更新某一个出口点的问题
- 算是帮助编译器做了代码优化
三、辅助控制语句
1、continue 语句
结束本次循环,接着判定下一次是否执行循环
注意continue与break的区别
continue直结束本次循环,而break终止本层循环
for(n = 100; n <= 200; n++) {
if (n%3 == 0)
continue;
printf("%d", n);
}
2、break 语句
用于从循环体内跳出循环体,即提前结束循环。
break只能用在循环语句和switch语句中。
for(r = 1; r <= 10; r++){
area = pi * r * r;
if(area > 100) break;
printf("%f", area);
}
3、return 语句
- return语句的一般形式: return ( <表达式> )
- 主要用于终止包含它的函数的执行
- 若终止的为主函数,则主程序结束