• C语言----循环结构1(基础篇五)


    今天更新一个C语言的循环,简单点就是就是我们平时在使用电脑时不停的刷新网页,生活中每天都要吃饭等等就是循环,而编程中也有不断循环的过程,或者遇到符合的条件结束循环

      下面进入今天的主题:

      需求:用计算机计算从1加到10的和

      一种笨方法:

        解题思路:

        1、定义2个变量:计数器,总和,并初始化为0

        2、计数器加11

        3、总和=总和+计数器

        4、计数器加12

        5、总和=总和+计数器

        6、……   

        7、计数器加110

        8、总和=总和+计数器

        9、输出总和55 

      程序1

        计算1+2+3++9+10

    // 5_1_计算1+2+3+....10的和,输出在屏幕上
    #include <stdio.h>
    main()
    {
        int i, j;   //i 是累加器, j是计数器
        i = 0;
        j = 1;
        i = i + j;  // i = 0 + 1
        j++;
        i = i + j; // i  = 1 + 2 
        j++;
        i = i + j;
        j++;
        i = i + j;
        j++;
        i = i + j;
        j++;
        i = i + j;
        j++;
        i = i + j;
        j++;
        i = i + j;
        j++;
        i = i + j;
        j++;
        i = i + j;
        j++;
        printf("%d
    ", i);
        system("pause");
    }

      ※累加器一般初始化为0,请同学们想想累乘器可否初始化为0NO 初始值应该为 1 零乘以任何数都得零!

      goto语句

      格式:

        goto 标号;

          标号格式:

          标识符:语句;

      规律:goto语句通常配合if语句使用,否则容易构成死循环

      程序2

        计算1+2+3++9+10goto解法

    //5_2_计算1+2+3+....+9+10的goto解法,结果输出在屏幕上面
    #include <stdio.h>
    #include <stdlib.h>
    main()
    {
        int i, j; //i 是累加器,j 是计数器
        i = 0;
        j = 1;
    
    mark:       // goto 语句用的标记
        i = i + j;
        j++;     //如果没有这一行程序就会进入死循环
        if (j <= 10) goto mark;
        printf("%d
    ", i);
        system("pause");
    
    }

      下面是goto流程图:

      while语句

    格式:

      while(条件表达式)

      {

        若干语句

        …

      }

      程序3                                

        计算1+2+3++99+10while解法

    // 5_3_计算1+2+3+.....+10的while解法
    #include <stdio.h>
    main() 
    {
        int i, j;    // i 是累加器   j 是计数器
        i = 0;
        j = 1;
    
        while (j <= 10)
        {
            i = i + j;
            j++;
        }
        printf("%d
    ", i);
        system("pause");
    }

       上面的代码中:

          printf放在循环体内和外的差别

          在循环里面的执行结果是把每一步都会打印出 i 的结果。打印10次

          

          在循环外面的执行结果是直接打印出 i 最后的结果。打印1次

          

      do while语句

    格式:

      do

      {

        若干语句

        …

       } while(条件表达式);

      程序4

        打印出02018年之间所有的闰年

    //5_4_打印出0到2018年所有的闰年
    #include <stdio.h>
    main()
    {
        int year = 0;
        do
        {
            // 4年一闰,100年不闰,400年又闰
            if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
                printf("%d	", year);
            year++;
        } while (year<=2018);
    
        system("pause");
    }

      ※所有的循环语句都是条件满足才执行循环体

      ※do while语句至少会执行一次循环体,while则有可能一次都不执行。

      作业

      1、写出计算1+2+3++99+100do while解法。

    //5_5_计算1+2+3+....10的 do while解法
    #include <stdio.h>
    main()
    {
        int i, j;   //i 是累加器   j是计数器
        i = 0;
        j = 1;
        do
        {
            i = i + j;
            j++;
        } while (j <= 10);
    
        printf("%d
    ", i);
        system("pause");
    }

      

      2、求10!   (求10的阶乘)

    //5_6_计算10的阶乘
    #include <stdio.h>
    main()
    {
        int a = 1, s = 1;
        do 
        {
            s = s*a;
            a++;
        } while (a<=10);
        printf("%d
    ", s);   //结果是:3628800
        system("pause");
    }

     

    最后分享一首古诗给大家!

      《冬夜读书示子聿》

          陆游

       古人学问无遗力

       少壮工夫老始成

       纸上得来终觉浅

       绝知此事要躬行

  • 相关阅读:
    转换时间对象和字符串对象&添加时间
    jquery深入学习17-2-19
    jquery深入学习
    java上传附件含有%处理或url含有%(URLDecoder: Illegal hex characters in escape (%) pattern
    数据库备份脚本(整库备份)
    docker 利用maven插件推送镜像
    排序算法对比分析图
    Java计算时间差、日期差总结
    百度地图计算点是否在园,正方形,多边形范围内。电子围栏
    java maven docker-maven-plugin 结合Dockerfile 构建 docker image 并上传到docker server
  • 原文地址:https://www.cnblogs.com/httpcc/p/10895955.html
Copyright © 2020-2023  润新知