分支与循环
目录
1.分支结构(选择结构)
if语句
一般形式:
if(表达式) //非0为正,0为假
语句
if语句的多种常见形式:
<1>if(表达式)
语句1
else
语句2
<2>if(表达式)
语句1
else if(表达式2)
语句2
else if(表达式3)
语句3
…………
else
语句n
关系操作符
用于数值间比较的运算符称为关系运算符,主要有以下6种:
1.<
2.<=
3.>
4.>=
5.==
6.!=
优先级:
前4种优先级相同,后两种也相同,前4种优先级高于后两种。
逻辑运算符
具有逻辑判断功能,主要有以下3种:
1.&& (与)
2.|| (或)
3.! (非)
a&&b //a与b都为真,结果为正,否则为假。
a||b //a与b有一个以上为真结果才为真,二者都为假结果为假。
!a //a为假,则!a为真,反之亦然。
" && “和” || “都是双目运算符(有两个操作数),” ! "为单目运算符。
优先级:
!> && > ||
switch语句
switch是多分支选择结构,它的一般形式如下:
switch(表达式)
{
case 常量1:
语句1
case 常量2:
语句2
…………
case 常量n:
语句n
default :
语句n+1
}
根据表达式不同的值,执⾏相应的 case 分⽀。如果找不到对应的值,就执⾏ default 分⽀。
2.循环结构
while循环
当循环条件表达式为真,就执行循环体语句,它的一般形式如下:
while(表达式)
语句;//如果循环体想包含更多的语句,可以加上⼤括号
直接执⾏判断表达式,表达式的值为0,循环直接结束;表达式的值不为0,则执⾏循环语句。
for循环
它的一般形式如下:
for(表达式1; 表达式2; 表达式3)
语句;
表达式1 ⽤于循环变量的初始化
表达式2 ⽤于循环结束条件的判断
表达式3 ⽤于循环变量的调整
do-while循环
先无条件执行循环体,然后再检查条件是否成立,若成立,再执行循环体。
它的一般形式如下:
do
语句 //如果循环体想包含更多的语句,可以加上⼤括号
while(表达式);
3.扩展语句
break语句
在循环条件执行过程中,往往有时候需要提前终止循环,C语言提供了关键字break,break的作用是语句永久的终止循环,跳出循环体,即提前结束循环,接着执行循环下面的语句。
注:break语句只能够运用在循环语句和switch语句中,不能单独使用。
continue语句
与break语句不同的是,continue语句只提前结束本次循环,从而接着执行下次循环。
goto语句
C语言还提供了一个非常特殊的语句,即goto 语句和跳转标号, goto 语句可以实现在同⼀个函数内跳转到设置好的标号处。
例如:
#include <stdio.h>
int main()
{
printf("123\n");
goto next:
printf("456\n");
here:
printf("跳过456的打印\n");
return 0;
}
但goto语句使用不当,则会导致在函数内部随意乱跳转,打乱程序的执⾏流程,所以建议尽量不去使用。
当然goto语句也并不是一无是处,它的使用恰巧可以弥补在多层循环中break语句的冗余,想快速跳出循环可以使用goto语句