二、C语言
2.3流程控制
1.顺序结构
程序从main函数开始执行,执行到main函数结束,整个代码运行结束
2.分支结构
(1)关系运算符
“>”、“<”、==“”、“!=”、“>=”、“<=”
关系运算符最终结果只有1(true)、0(false)
(2)逻辑运算符
“&&”(逻辑与) 既..又..、“||”(逻辑或) 要么..要么..、“!”
&&:全真为真,一假为假
||:一真为真,全假为假
!:真取非得假,假取非得真
逻辑运算符具有截断特性:
&& 左边为假值,右边不再计算
|| 左边为真值,右边不再计算
(3)特殊运算符(三目运算符)
逻辑表达式 ? 表达式1 : 表达式2;
结合方向自右至左
(4)if
1.简单分支
if (逻辑表达式)
{
语句块1;
}
else
{
语句块2;
}
注意:
if后面必须加逻辑表达式,else后面不能加逻辑表达式
if不加括号默认控制1个语句块
2.阶梯分支
if (逻辑表达式)
{
语句块1;
}
else if(逻辑表达式)
{
语句块2;
}
else if
{
语句块3;
}
注意:
if、else if、else只能控制一个语句块
if后面的表达式后不能加“;”
3.嵌套分支
if (逻辑表达式1)
{
if (逻辑表达式2)
{
语句块;
}
}
else
{
}
(5)switch
1.基本形式
switch (表达式)
{
case 常量1:语句块1;break;
case 常量2:语句块2;break;
case 常量3:语句块3;break;
default:
语句块4;
}
注意:
switch后面的表达式必须为整形表达式,不能为浮点数类型
case后面的值必须为常量,不能是变量
case后面的break不加,顺序向下执行直到switch结束或者遇到break才结束switch
2.嵌套结构
switch (表达式1)
{
case 常量1:switch (表达式2)
{
case 常量1:语句块1;break;
default:
语句块2;
};break;
default:
语句块3;
}
3.循环结构
(1)while循环
1.基本形式
while (逻辑表达式)
{
语句块;
}
2.死循环
while (1)
{
语句块;
}
(2)for循环
1.基本形式
for ( A; B; C)
{
语句块;
}
A:循环前执行的处理
B:循环执行的条件
C:循环执行每执行一次,执行的处理
2.双层for循环
for (A; B; C)
{
for (D; E; F)
{
G;
}
}
外层循环执行一次,里层循环执行一遍
3.do...while循环
do {
语句块;
} while (表达式);
4.goto循环
多用于出错处理,快速结束某个函数
名称:
sum += i;
i++;
if (i < 101)
goto 名称;
4. 辅助控制语句
(1) break
用在switch或者循环语句中表示退出switch或者循环
(2)continue
只能用于循环语句中表示跳过该次循环
(3)return
只能用于函数中表示函数结束