一、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. 调用robustfit函数作稳健回归

    调用robustfit函数作稳健回归 regress函数和regstats函数利用普通最小二乘法估计模型中的参数,参数的估计值受异常值的影响比较大.robustfit函数采用加权最小二乘法估计模型中的 ...

  2. CSS3之阴影

    CSS3中新增属性-阴影,可以做出很多漂亮的效果. 文字阴影text-shadow text-shadow属性值的顺序: text-shadow: h-shadow v-shadow blur col ...

  3. iface eth0 inet dhcp

  4. leetcode 119

    119. Pascal's Triangle II Given an index k, return the kth row of the Pascal's triangle. For example ...

  5. XML处理

    //生成XML XmlDocument xmlDoc = new XmlDocument(); XmlElement root = xmlDoc.CreateElement("Data&qu ...

  6. 用Zend Studio12 导入在workspace中的项目

    第一步: 文件(file)->新建(NEW)->其他(other) 第二步: 在打开的对话框里选择 常规(Genneral)->项目(Project) 第三步: 在打开的对话框输入项 ...

  7. sqlserver监控阻塞(死锁)具体情况

    公司sqlserver的监控系统主要是采用zabbix监控,但是zabbix的监控只能通过性能计数器给出报警,而无法给出具体的阻塞情况,比如阻塞会话.语句.时间等,所以需要配合sqlserver的一些 ...

  8. c#操作xml增删改查

    1.首先新建一个xml文件(Root是我写上的) 2. 3.直接上代码,更直观 (1)初始化xml /// <summary> /// 初始化xml /// </summary> ...

  9. 兼容firefox的iframe高度自适应代码

    网上关于iframe高度自适应的代码有很多,但比较杂乱,本文根据实用性整理了以下代码: JavaScript部分: 折叠JavaScript Code复制内容到剪贴板 <script type= ...

  10. linux下快速删除大量文件

    昨天遇到一个问题,在Linux中有一个文件夹里面含有大量的Cache文件(夹),数量级可能在百万级别,使用rm -rf ./* 删除时间慢到不可接受.Google了一下,查到了一种方法,试用了下确实比 ...