C语言流程控制
流程控制
总览图

分支语句
if语句
当分支语句过多时,使用if语句会提高代码阅读难度。
判断浮点数大小时需通过区间来进行,浮点数在进行存储的时候会丧失了一定的精度,而对比浮点数大小的时候比较的是他们二进制的数值。
1 //判断浮点数是否等于0 2 #define EPSINON 0.0000001 3 int main() 4 { 5 double d_x = 0.0; 6 if(-EPSINON <= d_x&&d_x <= EPSINON) 7 { 8 printf("d_x==0.0"); 9 } 10 return 0; 11 }
循坏语句
for
先判断条件再执行循坏体
当需要用到一个循坏变量的时候,推荐使用for,它的格式相比while让代码更加简洁。
1 //for(初始化表达式;条件表达式;变量递增表达式){} 2 int main() 3 { 4 for (int i = 0; i <= 10;i++) 5 { 6 if (i == 10) 7 { 8 printf("%d", i); 9 } 10 } 11 return 0; 12 }
while
先判断条件再执行循坏体
仅需要判断动态条件推荐使用while
1 int main() 2 { 3 int i = 0; 4 while (i<10) 5 { 6 i++; 7 } 8 printf("%d", i); 9 return 0; 10 }
do...while
1 int main() 2 { 3 //函数设计常用的模式 4 //统一入口 5 do 6 { 7 if (0) 8 break; 9 if (0) 10 break; 11 } while (0); 12 //统一出口 13 return 0; 14 }
goto
会破坏整个程序的逻辑,不推荐,在早期的程序设计中曾用于统一接口。
break
1 int main() 2 { 3 4 for (int i = 0; i <= 10;i++) 5 { 6 if (i == 3) 7 { 8 printf("%d", i); 9 break;//跳出程序的for循坏语句 10 } 11 } 12 return 0; 13 }
continue
1 int main() 2 { 3 4 for (int i = 0; i <= 10;i++) 5 { 6 if (i == 2) 7 { 8 printf("%d", i); 9 continue;//跳出当前循坏执行下一次循坏 10 } 11 } 12 return 0; 13 }
浙公网安备 33010602011771号