C语言流程控制

📅 2026/7/10 22:52:39 👁️ 阅读次数 📝 编程学习
C语言流程控制

1.分支结构

switch分支

1)switch 后面必须是一个整形表达式
2)case 后面为整形的常量 ,不能是变量或表达式
3)switch 的整形表达式和case后面整形的常量做等值比较。如果相等执行对应的case,直到
break停止。 如果都没有匹配中,执行default;

2.循环控制

循环三要素:
1)循环控制变量需要初始化
2)需要检测循环变量 ,是否继续循环
3)循环中,需要包含控制变量变化的语句 ++,--

2.1while循环

while(表达式)
{
循环体;
}
表达式的值是一个逻辑 。1真 0假
循环体:代码会执行多次
第一步对表达式求值 ,如果为1(真),则执行循环体 。否则循环结束
第二步执行循环体循环的代码
第三步执行第一步
循环体中需要包含使用循环慢慢趋势于结束的变量(循环体控制变量,++,--)
此处需注意while(表达式)后千万不要加分号!!!

2.2for循环

for(表达式1;表达式2;表达式3)
{
循环体;
}
表达式1,变量初始化,或者循环运行起来前,需要初始化的变量
表达式2,决定循环是否会继续运行。如果为真则循环执行,否则循环停止
表达式3,对循环控制变量,进行改变的地方(++,--)
执行的流程
第一步执行表达式1,对控制变量初始化。(只会走一次)
第二步对表达式2求值,如果为真,执行循环体,否则结束
第三步执行循环体代码
第四步执行表达式3, 对控制变量 ++,--
第五步执行第二步

2.3for双层循环

int i =0;
int j = 0 ;
for(j=0;j<3;j++) // 外层
{
for(i=0;i<5;i++)// 内层循环
{

循环体
}
}外层循环 j++ 一次 ,则内层循环执行5次

此处举例为使用for循环输出九九乘法表

2.4goto循环

无条件跳转
goto只能在同一个函数内部跳转。且goto相当与汇编中的jmp指令。
在应用层程序编程中,禁止使用。但在linux内核编程中,错误处理处使用的多。

2.5do...while循环

do
{
循环体;
}while(表达式);
循环体至少执行一次。 while() 后面的分号,不可省略。否则语法报错!!!不要和前面搞混了
第一步执行循环体
第二步表达式求值,如果真,则执行循环体。否则循环终止。

3.循环辅助控制

3.1continue


第一步跳过本次循环
第二步在循环的过程中,需要屏蔽其中某几次循环

读者在写此处的时候不要加此处的/* */,此符号代表把/*到*/之间的代码注释

3.2break

第一步跳出当前循环或switch
第二步如果不希望循环继续 ,调用break