day04 循环 随机值 break和continue 循环嵌套 while 循环 do while

来源:互联网 发布:数据治理 权威定义 编辑:程序博客网 时间:2024/04/19 08:09
#pragma mark-循环
    //循环的概念:分为四个部分
   
/*
     1.
循环变量的初始值(盛包子的容器)
     2.
循环条件(做多少包子)
     3.
循环变量的增值(做包子)
     4.
循环体(吃包子)
     */

//    for(1循环变量的初始化;2循环条件;3循环变量的增值)
//    {
//        4循环体;
//    }
   
//循环的执行流程
   
//1,2,4,3,2,4,3,2,4,3....2.
   
//每次吃一个包子
//    for (int i=1; i<11; i++) {
//        printf("我每次吃第%d个包子!\n",i);
//    }
   
//每次吃2个包子
//    for(int i=0;i<50;i +=2)
//    {
//        printf("我第%d次吃2个包子\n",i / 2+1);
//    }
   
   
//每次吃5个包子
//    for(int i=0;i<100;i +=5)
//    {
//        printf("我第%d次吃5个包子\n",i / 5+1);
//    }
//练习:打印100我胸前的红领巾更加鲜艳了
//    for(int i=0;i<100;i++)
//    {
//        printf("我胸前的红领巾更加鲜艳了!\n");
//    }
   
   
//正序打印1-5的数
//    for (int i=0;i<5; i++) {
//        printf("%d\n",i+1);
//    }
//    printf("---------\n");
   
//如何倒叙打印5-1的数
//    for (int i=5;i>0; i--) {
//        printf("%d\n",i);
//    }
   
//for循环打印1-100之间的偶数
   
//注:先遍历1-100之间的数,然后在判断是否为偶数
//    for (int i=1;i<101; i++) {
//        if (i%2==0) {
//            printf("%d\n",i);
//        }
//       
//    }
   
   
//for循环打印1-100之间的奇数
//    for (int i=1;i<101; i++) {
//        if (i%2==1) {
//            printf("%d\n",i);
//        }
//    }
   
//打印1-100之间7的倍数
//    for (int i=1;i<101; i++) {
//        if (i%7==0) {
//            printf("%d\n",i);
//        }
//    }
   
   
//打印1-100之间个位为7的数
//    for (int i=1;i<101; i++) {
//        if (i%10==7) {
//            printf("%d\n",i);
//        }
//    }
   
//打印1-100之间十位不为7的数
//    for (int i=1;i<101; i++) {
//        if (i/10%10!=7) {
//            printf("%d\n",i);
//        }
//    }
   
//打印出1-100之间的即不是7的倍数又不含7的数
//    for(int i=1;i<=100;i++)
//    {
//        if (i%7!=0 && i%10!=7 && i/10%10!=7)
//        {
//            printf("%d\n",i);
//        }
//    }
   
//1-100之间的整数和
//    int sum=0;
//    for (int i=1; i<=100; i++)
//    {
//        sum +=i;
//    }
//    printf("sum=%d\n",sum);
   
//200-300之间的偶数的个数
//    int count=0;
//    for (int i=200; i<=300;i++) {
//        if (i%2==0) {
//            ++count;
//        }
//    }
//    printf("count=%d",count);
#pragma mark-随机值
    //通过随机很熟arc4random()随机一个整数
   
//公式:随机[a,b]范围内的数
   
//arc4random() % (b-a+1)+a;
   
//[0,9]
//    int ran=0;//存储随机的整数
//    ran=arc4random()%10;//等价于arc4random()%(9-0+1)+a;
   
//[10,20]
   
//int ran2=arc4random()%11+10;//等价于arc4random()%(20-10+1)+10;
   
//[48,73]
   
//int ran3=arc4random()%(73-48+1) +48;
   
//练习:for循环打印10个随机数(范围为10-30);求最大值和最小值
  
// int max=0,min=30,data=0;
   
   
//将第一个值赋值给最大值和最小值
//    data=arc4random()%21+10;
//    min=max=data;
//    printf("%3d",data);
   
//    for (int i=0; i<10; i++)
//    {
//        data=arc4random()%21+10;
//       
//        if (data > max)
//        {
//            max=data;
//        }
//        if(data<min)
//        {
//            min=data;
//        }
//        printf("%3d",data);
//    }
//    printf("\n");
//    printf("max=%d,min=%d\n",max,min);
#pragma mark-breakcontinue
    //break:用来结束本层循环.
   
//continue:用来结束本次循环.
//    for(int i=0;i<5;i++)
//    {
//       
//        if (i%2!=0)
//        {
//            continue;
//        }
//        printf("%d\n",i);
//
//    }
//    for (int i=0; i<20; i++)
//    {
//        printf("我是一个大英雄%d\n",i);
//        if (i==10)
//        {
//            break;//
//        }
//        else
//        {
//            printf("你是谁%d\n",i);
//        }
//       
//    }
#pragma mark-循环嵌套
    //循环2作为循环1的循环体
   
//原理:要找到内层循环和外层循环变量之间的关联
   
//外层控制行数,里层控制内容
//    for (int i=0; i<5; i++) {
//        for (int j=0; j<i+1; j++) {
//            printf("%d",j);
//        }
//        printf("\n");
//    }
   
   
//外层控制层数
//    for (int i=0; i<3; i++)
//    {
//        //内层控制输出的内容
//        for (int j=0; j<=3-i; j++)
//        {
//            printf("%d",j);
//        }
//        printf("\n");
//    }
   
   
//外层控制层数
//    for (int i=0; i<3; i++)
//    {
//        //内层控制输出的内容
//        for (int j=3; j>=3-i; j--)
//        {
//            printf("%2d",j);
//        }
//        printf("\n");
//    }
   
//
   
/*
     *
    * *
   * * *
     */

//    for (int i=0; i<3;i++)
//    {
//        for (int k=0; k<2-i; k++)
//        {
//            printf(" ");
//        }
//        for (int j=0; j<i+1; j++)
//        {
//            printf("* ");
//        }
//        printf("\n");
//    }
   
//打印九九乘法表
//    for (int i=1; i<=9; i++)
//    {
//        for (int j=1; j<=i; j++)
//        {
//            printf("%d x %d =%2d  ",i,j,i*j);
//        }
//        printf("\n");
//    }
   
//打印3个数字(0-9)的组合可能(组成三位数)
   
//三个for循环
//    for(int i=1;i<10;i++)
//    {
//        for (int j=0;j<10;j++)
//        {
//            for(int k=0;k<10;k++)
//            {
//                printf("%d %d %d\n",i,j,k);
//            }
//        }
//    }
   
#pragma mark-while 循环
     //while循环条件和循环体两部分,循环变量初始化在循环条件之前。
   
//而循环变量增量是作为循环体的一部分。
   
//while 循环是先判断在执行循环体
   
//while循环打印出1-100之间7的倍数
   
//    int i=1;
//    while (i<=100)
//    {
//        if (i %7==0)
//        {
//            printf("%3d",i);
//        }
//        i++;
//    }
   
//while循环打印出1-100之间不是7的倍数并且不含7的数
//    int i=1;
//    while (i<=100) {
//        if (i % 7!=0 && i%10!=7 && i/10!=7)
//        {
//             printf("%4d",i);
//        }
//        i++;
//    }
   
#pragma mark-do while
    //do ...while循环体包括循环条件和循环体两部分吗,循环变量初始化在循环条件之前,而循环变量增量事作为循环体的一部分
   
   
//do ..while 循环是先执行循环体在判断条件
   
   
//练习:使用do ...while循环输出1-100个位是7的数
   
//    int i=1;
//    do{
//        if (i%10==7)
//        {
//            printf("%4d",i);
//        }
//        i++;//循环变量的增量
//    }while (i<=100);
   
   
//练习:输入一个整数,求这个整数的位数
//    int count=0;
//    int num=0;
//    printf("请输入一个整数:");
//    scanf("%d",&num);
//    while (num!=0)
//    {
//        count++;
//        num /=10;
//    }
//    printf("count=%d",count);
//    return 0;
    //总结:
0 0