• for循环的灵活性


      for循环把初始化测试更新组合在一起,其基本形式如下所示:

    1. for(初始化;测试条件;更新表达式)
    2. {
    3. //循环体
    4. }

      关键字for后面的圆括号中3个表达式,分别用两个分号隔开:
      第一个表达式是初始化,只会在for循环开始时执行一次。
      第二个表达式是测试条件,在执行循环之前对表达式求值。如果表达式为假,循环结束。
      第三个表达式执行更新,在每次循环结束时求值。

    for循环的结构图:



      除此之外,这里注重学习一下for循环的其它9种用法:


      第一种:可以使用递减运算符来递减计数器:

    1. int main(void)
      {
          for(int secs =5; secs >0; secs--)
          {
              printf("%d seconds!
      ", secs);
          }
          return0;
      }

      第二种:可以让计数器递增2、10等:

    1. int main(void)
      {
          //secs从2开始,每次递增5
          for(int secs =2; secs <60; secs +=5)
          {
              printf("%d seconds!
      ", secs);
          }
          return0;
      }

      第三种:可以用字符代替数字计数

    1. int main(void)
      {
          char ch;
          for( ch ='a'; ch <='z'; ch++)
          {
              printf("the ascii value for %c is %d.
      ", ch, ch);
          }
          return0;
      }

      第四种:除了测试迭代次数外,还可以测试其它条件

    1. for(num =1; num*num*num <=216; num++);

      第五种:可以让递增的量几何增长,而不是算数增长。也就是说,每次都乘上而不是加上一个固定的量

    1. int main(void)
      {
          double debt;
          for(debt =100.0; debt <150.0; debt *=1.1)
          {
              printf("your debt is now $%.2f.
      ", debt);
          }
          return0;
      }

      第六种:第三个表达式可以使用任意合法的表达式。无论是什么表达式,每次迭代都会更新表达式的值

    1. int main(void)
      {
          int x;
          int y =55;
          for(x =1; y <=75; y =(++x *5)+50)
          {
              printf("%10d %10d
      ", x, y);
          }
          return0;
      }

      第七种:可以省略一个或多个表达式(但是不能省略分号),只要在循环中包含能结束循环的语句即可.

    1. int main(void)
      {
          int x =0;
          int y =55;
          for(; y <=75; y =(++x *5)+50)
          {
              printf("%10d %10d
      ", x, y);
          }
          return0;
      }

      第八种;第一个表达式不一定是给变量赋初值,也可以是printf()。记住,在执行循环的其它部分之前,只对第一个表达式求值一次或执行一次

    1. int main(void)
      {
          int x =0;
          int y =55;
          for(printf("hello dear"); y <=75; y =(++x *5)+50)
          {
              printf("%10d %10d
      ", x, y);
          }
          return0;
      }

      第九种:循环体重的行为可以改变循环头中的表达式。

    1. for(y =1; y <=75; y = y + delta);

      总而言之,具体使用视情况而定!!!

  • 相关阅读:
    jquery手写实现单页滚动导航
    小程序:商品分类,实现滑块视图
    微信小程序增加悬浮在线客服
    小程序 杂记
    自动售货机 扫描支付 原理
    HTTP的SSL 证书安装
    表达
    Linux 下svn恢复到某一版本
    倒车入库 技巧
    svn 杂记
  • 原文地址:https://www.cnblogs.com/Bob-tong/p/6610774.html
Copyright © 2020-2023  润新知