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 }

posted on 2018-12-16 22:06  夜深矣  阅读(54)  评论(0)    收藏  举报

导航