一、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. win7突然无法启动(以前可以启动的,电脑是ubuntu+win7双系统)

    这里 有个解决办法是将win7的menuentry里的chainloader +1改为ntldr /bootmgr,但是这个解决办法是基于把Boot Loader指定在/dev/sda1里了,即win ...

  2. MFC六大核心机制之二:运行时类型识别(RTTI)

    上一节讲的是MFC六大核心机制之一:MFC程序的初始化,本节继续讲解MFC六大核心机制之二:运行时类型识别(RTTI). typeid运算子 运行时类型识别(RTTI)即是程序执行过程中知道某个对象属 ...

  3. 开源项目:libbpg

    1 ubuntu下编译libbpg(编译机器64bit) 安装cmake,libpng,yasm,gcc,g++ cmake版本最低为2.8.8,安装完毕后使用cmake --version查看是否安 ...

  4. JS回车事件

    <script type="text/javascript"> //当回车按下时,/=47,*=42,+=43 function keypress(form0){ if ...

  5. ASP.NET数据控件

    数据服务器控件就是能够显示数据的控件,与那些简单格式的列表控件不同,这些控件不但提供显示数据的丰富界面(可以显示多行多列数据并根据用户定义来显示),还提供了修改.删除和插入数据的接口. ASP.NET ...

  6. rhythmbox插件开发笔记1:简介&入门

    rhythmbox是gnome下一款开源的音乐播放软件.ubuntu和fedora的桌面环境中均默认安装了rhythmbox. rhythmbox架构非常灵活,几乎所有地方都可以用插件来修改.用户想实 ...

  7. Arch 安装步骤

    1.CFDISK 命令分区 一个主分区和一个逻辑分区 2.partprobe /dev/sdx 刷新分区表 3.mkfs 4. 5. 6.>dhcpcd 7. 8. 9. 10. 11. 12. ...

  8. Javascript 模块模式

    模块模式(Module Pattern)提供了一种代码封装的方式,可以优雅地创建非耦合的代码块. 它是利用即时函数为对象创建私有变量和特权方法.严格来说,Javascript中没有私有成员的概念,所有 ...

  9. Apache开启Proxy代理,实现域名端口转发

    今天帮客户迁移网站,客户一个是ASPX的一个是PHP的网站,这时候有2个域名,可是php网站是Apache下的伪静态,必须要用到Apache,但是ASPX网站还必要到IIS+Mssql 然后到了这个时 ...

  10. 设置field的背景颜色以及对stylesheet的理解

    今天遇到一个需求:在做页面输入验证的时候,如果用户没有输入某个项,那么这个项显示为红色,一直没头绪,也找peoplebook,发现field有一个style的方法,后来又在谷歌上找,终于找到了方法: ...