C语言流程控制(各种结构) |
您所在的位置:网站首页 › c语言流程控制语句 › C语言流程控制(各种结构) |
一、顺序结构
自上至下,自左至右依次执行。 二、分支结构当程序执行到某个位置时,程序后序的执行方向由某个条件决定,多选其一。 1.if分支 1.1 if简单分支注意:1.if可以单独使用,但是else不能单独使用; 2.{}语法上可以省略,但if语句后只能接一条语句。推荐加上{},可读性更高,可以接更多语句,适用范围更广。 3.if ()后不能加‘;’ if (逻辑值) { 语句块1; } else { 语句块2; } 1.2 if阶梯分支注意:1.if可以单独使用,但是else if、else不能单独使用; 2.if ()、else if()后不能加‘;’ 3.{}语法上可以省略,但if语句后只能接一条语句。推荐加上{},可读性更高,可以接更多语句,适用范围更广。 4.阶梯的判断顺序,一般根据实际场景下,不同情况下出现的概率进行递减的排序。 if (逻辑值) { 语句块1; } else if (逻辑值) { 语句块2; } else if (逻辑值) { 语句块3; } ... else { 语句块n; } 1.3 if嵌套分支注意:1.嵌套最好不超过三层,阅读不太方便。 2.当if分支内没有{},else、else if会向上匹配遇到的第一个并且结合后符合语法的if结合起来。 if (逻辑值) { if (逻辑值) { if (逻辑值) { } } } else { } 2.switch分支注意:1.num的值,必须是一个整形 2.case后:必须是一个整形常量(需要的是一个确定的值),值不能相等 3.break一般情况下不能漏写 switch(num) { case 0: (语句); break; case 1; (); break; ... case n; (); break; deflaut; } 三、循环结构当程序执行到某个位置时,程序会反复执行某段代码,直到循环满足退出条件。 适用情况:1.执行重复的代码 2.执行有规律的代码 3.暴力穷举 循环三要素: 1.循环体:需要重复执行的逻辑代码 2.结束条件:循环在什么时候结束 3.推动循环趋向结束的代码。 1.for循环 1.1 基本形式注意:1.表达式1、表达式2、表达式3之间使用‘;’隔开 2.for()后不要加分号 3.for( ; ;)不写时默认死循环 表达式1:初始化,进入循环之前的准备工作 表达式2:循环结束条件:决定循环在什么时候退出 表达式3:循环变量改变:推动循环趋向结束的代码 执行过程:运行表达式1,运行表达式2(若其值为真,则执行for语句中指定的内嵌语句,然后执行第三步;若其值为假,则结束循环,执行循环后的操作),运行表达式3,转回执行表达式2,循环结束,执行for'语句后 的语句。 for (表达式1;表达式2;表达式3) { 语句块; } 1.2 嵌套形式外层循环一次,内层循环一遍 举个例子:打印一份九九乘法表,表从左下,右下,右上 for (表达式1;表达式2;表达式3) { for(表达式a;表达式b;表达式c) { 语句块A; } } 2.while循环注意:1.for循环 可以和while循环等价转换; 2.当不明确循环执行的次数或循环的上下限时,一般使用for循环 当不明确循环执行的次数或循环的上下限,但是明确循环结束时的状态时,一般使用while循环。 3.while()后不能接‘;’ while (表达式1(逻辑值)) { 语句块A; } 3.do ... while 循环注意:1.先执行一次循环体,再去判断结束条件 2.循环的结束条件要依赖循环体的执行结果 例子:用do while写一个大小写字母转换,并且输入‘q'和’Q‘时退出 do{ 语句块A; }while(表达式1); 4.利用goto实现的循环(禁止使用goto(出错处理)执行循环,可读性差)goto:1.可以跳转到程序的任意位置开始执行 2.过度使用goto语句,会严重破坏程序的逻辑结构,极大降低可读性。 四、辅助控制1.break 1)在switch语句中,用来作为某个case:的出口,跳出switch语句 2)在循环体内,跳出离它最近的循环 2.continue 1)在循环体内执行时,短路当次循环体的后续执行 3.return 1)函数结束返回执行结果 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |