一、while循环
    while (循环条件) {
        循环体;
    }
    // 1.定义循环变量
    int time = 1;
    // 2.循环条件
    while (time <= 3) {
        // 3.循环体
        printf("不能玩手机\n");
        // 4.循环增量
        time++;
    }
    // 定义循环变量
    int quan = 1;
    // 循环条件
    while (quan <= 10) {
        // 循环体
        printf("跑圈%d\n", quan);
        // 循环增量
        quan++;
    }

练习:打印1-0之间所有的数
       ;
     ) {
         printf("%-4d", number);
         number++;
     }
       //打印1-100之间所有的奇数
      ;
      ) {
           != ) {
              printf("奇数为:%d\n",a1);
           }
          a1++;
      }

二、随机数
    arc4random()
     原理: 余数 < 除数
     [0, n] arc4random() % (n + 1)
     [a, b] arc4random() % (b - a + 1)+a

 //[0, 9]
     ;
     printf("random = %d\n", random);

     // [0, 10]
     ;
     printf("random1 = %d\n", random1);

     // [0, 20]
     ;
     printf("random2 = %d\n", random2);

     // [1, 10] -- [0, 9]+1
      + ;
     printf("random3 = %d\n", random3);

     // [10, 20]-- [0, 10] + 10
      + ;
     printf("random4 = %d\n", random4);
 //练习: 随机产生10个数, 范围[0, 10]

     ;
     ) {

         // 打印随机数 [0, 10]
         ;
         printf("%d ", random);

         number++;
     }

     // 练习:用while打印10个随机数(范围为10~30),求最大值和最小值。

     ;
     ;
     ;
     ) {
         // 打印随机数(范围为10~30)
          + ;
         printf("%4d", random);
         if (max < random) {
             max = random;
         }
         if (min > random) {
             min = random;
         }

         number++;
     }
     printf("max = %d\n", max);
     printf("min = %d\n", min);

三、 break, continue
    
     break:在switch...case中,结束当前的case分支
      在循环中,遇到break,break后面的语句不再执行并结束整个循环
     continue:在循环中遇到continue,后面的语句不再执行并结束本次循环

  ;
     ) {

         ) {
             printf("相中,走啦%d\n", count);
             break;
         }

         ) {
             printf("前女友,跳过\n");
             count++;
             continue;
         }

         printf("count = %d\n", count);

         count++;
     }
 //练习:打印1-20之间所有的数,如果是7,不打印,如果是17,17和后面的数不再打印

     ;
     ) {
         a++;
         ) {
             a++;
             continue;
         }

         ) {
             break;
         }

         printf("%d ", a);
         a++;
     }

四、do...while
    
    do {
        循环体
    } while (循环条件);
    
     定义循环变量
    int a = 1;
    do {
        
        a++;
        
    } while (a > 10);
    printf("a = %d\n", a);
    
    while (a > 10) {
        a++;
    }
    printf("a = %d\n", a);
    
五、 for循环

  //打印1-5之间所有的数

     ;

     ;) {
         printf("%d ", a);

         a++;
     }

(定义循环变量 ; 循环条件;循环增量)
    for (int a = 1;a <= 5;a++) {
        printf("%d ", a);
    }

 //用for循环打印1-100之间所有的数
     ;
     ; i <= ; i++){
         printf("%d", i);
         printf("  ");
     }

     printf("i = %d\n", i);

      //用for循环打印1-100之间所有的偶数
     ; i <= ; i++) {
          == ) {
             printf("%d ", i);
         }
     }

     // 用for循环打印出1~100之间7的倍数。
     ; i <= ; i++) {
          == ) {
             printf("%4d", i);
         }
     }

      //用for循环打印出1~100之间个位为7的数。
     ; i<= ; i++) {
          == ) {
             printf("%4d", i);
         }
     }

     // 用for循环打印出1~100之间十位为7的数。
     ; i <= ; i++) {
          == ) {
             printf("%4d", i);
         }
     }

      //用for循环打印出1~100之间既不是7的倍数并且也不包含7的数。
     ; i <= ; i++) {
          !=  && i %  !=  && i /  != ) {
             printf("%-4d", i);
         }
     }

六、循环嵌套

 /*
        1 2 3 4
        1 2 3 4
        1 2 3 4
        */

        //控制行数
       ; i <= ; i++) {
           // 控制每一行要打印的内容
          ; j <= ; j++) {
              printf("%d ", j);
          }
          printf("\n");
      }
     /*
      1
      1 2
      1 2 3
      1 2 3 4
      1 2 3 4 5
      */

      //控制行数
     ; i <= ; i++) {
         // 每一行要打印的内容
         ; j <= i; j++) {
             printf("%d ", j);
         }
         printf("\n");
     }
     /*
      1 2 3 4 5
      1 2 3 4
      1 2 3
      1 2
      1
      */

      //控制行数
     ; i >= ; i--) {
         // 每一行要打印的内容
         ; j <= i; j++) {
             printf("%d ", j);
         }
         printf("\n");

     }
      //打印乘法口诀表
 2
 3      //控制行数
     ; i <= ; i++) {

         // 控制打印的方格
         ; j <= i; j++) {

             printf("%dx%d=%d ", j, i, j*i);
         }
         printf("\n");
     }
 //打印三个数字(0 - 9)的组合可能(组合成三位数)。
 2
 3      //控制百位数
     ; i <= ; i++) {

         // 控制十位数
         ; j <= ; j++) {

             // 控制个位数
             ; k <= ; k++) {

                 printf(+j*+k);
             }
         }
     }

总结:
     for循环通常用于知道循环次数的情况下使用(常用)
     while:不明确循环次数,知道循环结束的标识

iOS学习之C语言循环结构的更多相关文章

  1. iOS学习之C语言分支结构

    一.BOOL类型 返回值:真:YES   假:NO 定义一个布尔类型的变量 YES == 1, NO == 0 计算机在识别时,YES就替换成1,NO就替换成0 BOOL isGirl = YES; ...

  2. IOS学习笔记07---C语言函数-printf函数

    IOS学习笔记07---C语言函数-printf函数 0 7.C语言5-printf函数 ------------------------- ----------------------------- ...

  3. IOS学习笔记06---C语言函数

    IOS学习笔记06---C语言函数 --------------------------------------------  qq交流群:创梦技术交流群:251572072              ...

  4. Bash脚本编程学习笔记07:循环结构体

    本篇中涉及到算术运算,使用了$[]这种我未在官方手册中见到的用法,但是确实可用的,在此前的博文<Bash脚本编程学习笔记03:算术运算>中我有说明不要使用,不过自己忘记了.大家还是尽量使用 ...

  5. C语言------循环结构II

    仅供借鉴.仅供借鉴.仅供借鉴(整理了一下大一C语言每个章节的练习题.没得题目.只有程序了) 文章目录 1 .实训名称 2 .实训目的及要求 3 .源代码及运行截图 4 .小结 1 .实训名称 实训6: ...

  6. C语言-循环结构及break、continue

    循环结构 --1-- 结构循环 1.1 while循环 1.2 do…while循环 1.3 for循环 --2-- break和continue 2.1 break关键字 2.2 continue关 ...

  7. iOS学习笔记---c语言第二天

    一.bool布尔类型    c语言没有bool类型,oc里有bool类型 是一种非真即假的数据类型,布尔类型的变量只有yes和no两个值.yes表示表达式是真,no表示表达式是假. 在c语言中认为非0 ...

  8. Objective-C 学习笔记(一) 语言程序结构

    Objective-C语言程序结构 “Hello World”简单示例 #import <Foundation/Foundation.h> //预处理命令,它告诉Objective-C语言 ...

  9. iOS学习笔记---C语言第三天

    循环结构 : while循环   do...while循环(几乎不用)     for循环(使用最多) 特点:在给定的条件成立时,反复执行某程序段,直到条件不成立为止. 给定的条件为循环条件,反复执行 ...

随机推荐

  1. 关于union的那些事儿

    自从当年明月的<明朝的那些事儿>爆红之后,以***那些事儿命名的文章便层出不穷.个人认为,这样的命名通俗但具有吸引力,容易接地气.哈哈,所以我也写了几篇以<***那些事儿>的文 ...

  2. RAW格式

    一.什么是RAW文件?RAW文件主要是一种记录了数码相机传感器的原始信息,同时伴随着一些由相机所产生的一些元数据(metadata,诸如IS0的设置.快门速度.光圈值.白平衡等)的文件.不同的相机制造 ...

  3. SQL2005中使用identity_insert向自动增量字段中写入内

    摘自: http://www.aspbc.com/tech/showtech.asp?id=1117 SQL2005以前的数据库是不允许向自动增量字段中写入内容的,ACCESS也不行,但在SQL200 ...

  4. hosts文件导致打不开某些网站

    如果出现,某些网站访问不了,公司也没有进行限制的情况下,考虑是hosts文件出问题了. 解决办法:删除hosts文件,新建一个同名文件.

  5. hdu2085

    #include <stdio.h> int main(){ __int64 h[],l[]; int i,j; int n; ){ h[]=; l[]=; ;i<=n;++i){ ...

  6. static local variable

    Putting the keyword static in front of a local variable declaration creates a special type of variab ...

  7. DevExpress 14.2 批量汉化 以及客户端的汉化

    DXperience汉化方法介绍 运用慧都提供的DXperience汉化包,能将最新版本的DXperience WinForm和ASP.NET控件界面.弹出框.右键菜单等汉化成中文,且能根据自己的需求 ...

  8. Git一张图学习

  9. [leetcode]_Remove Nth Node From End of List

    题目:移除linked-list从尾到头的第N个元素 自我思路:因为题目给出的N是从链表尾开始计算的,单链表不存在从子指向父亲的反向指针,因此我先计算链表的整个长度len,然后用len - N来表示正 ...

  10. WIN10 64位下VS2015 MFC直接添加 halcon 12的CPP文件实现视觉检测

    近段时间开始接触halcon,但是在VS2015里面使用,无论是配置还是生产EXE文件,都不如意. 加上网上的教程很多,经过多次测试,其实有很多地方无需修改,如果修改的太多也失去了直接添加封装的意义. ...