zoukankan      html  css  js  c++  java
  • 第五章 循环结构课后反思

    一、本章重点、难点

    重点:

    • 使用循环结构,编写程序,输出几何图形

    • 用于循环中的break语句和continue语句。

    难点:

    • 输出较为复杂的几何图形。

    • 循环结构的嵌套。

    • break语句和continue语句的区别。break是终止循环,而continue是提前进入下一循环。

    二、课内反思

    1、所学内容

    (1)for语句、while语句、do-while语句、break语句和continue语句。

    (2)使用循环结构输出指定几何图形。

    (3)控制计算机自动生成二元算数表达式。

    2、我的代码

    a

    #include<stdio.h>
    main()
    {
        int i,j;
        for(i=1;j<=8;i++)
        {
            for(j=1;j<=i;j++)
                printf("*");
            printf("
    ");
        }
    }

     以此类推,那么是不是可以不限行数,我想输出多少行,就能输出多少行,实践之后,我发现只要再加一个变量就可以啦。

    代码如下:

    #include<stdio.h>
    main()
    {
        int i,j,n;
        scanf("%d",&n);
        for(i=1;j<=n;i++)
        {
            for(j=1;j<=i;j++)
                printf("*");
            printf("
    ");
        }
    }

    b

    #include<stdio.h>
    main()
    {
        int i,j;
        for(i=1;i<=8;i++)
        {
            for(j=i;j<=8;j++)
                printf("*");
            printf("
    ");
        }
    }

    #include<stdio.h>
    main()
    {
        int i,j,n;
        scanf("%d",&n);
        for(i=1;i<=n;i++)
        {
            for(j=i;j<=n;j++)
                printf("*");
            printf("
    ");
        }
    }

    c

    #include<stdio.h>
    main()
    {
        int i,j,k;
        for(i=1;i<=8;i++)
        {
            for(j=1;j<=(8-i);j++)
                printf(" ");
            for(k=1;k<=i;k++)
                printf("*");
            printf("
    ");
        }
    }

    #include<stdio.h>
    main()
    {
        int i,j,k,n;
        scanf("%d",&n);
        for(i=1;i<=n;i++)
        {
            for(j=1;j<=(n-i);j++)
                printf(" ");
            for(k=1;k<=i;k++)
                printf("*");
            printf("
    ");
        }
    }

    d

    #include<stdio.h>
    main()
    {
        int i,j,k;
        for(i=1;i<=8;i++)
        {
            for(j=1;j<i;j++)
                printf(" ");
            for(k=i;k<=8;k++)
                printf("*");
            printf("
    ");
        }
    }

    #include<stdio.h>
    main()
    {
        int i,j,k,n;
        scanf("%d",&n);
        for(i=1;i<=n;i++)
        {
            for(j=1;j<i;j++)
                printf(" ");
            for(k=i;k<=n;k++)
                printf("*");
            printf("
    ");
        }
    }

    e

    #include<stdio.h>
    main()
    {
        int i,j,k;
        for(i=1;i<=7;i++)
        {
            for(j=i;j<7;j++)
                printf(" ");
            for(k=1;k<=(2*i-1);k++)
                printf("*");
            printf("
    ");
        }
    }

    #include<stdio.h>
    main()
    {
        int i,j,k,n;
        scanf("%d",&n);
        for(i=1;i<=n;i++)
        {
            for(j=i;j<n;j++)
                printf(" ");
            for(k=1;k<=(2*i-1);k++)
                printf("*");
            printf("
    ");
        }
    }

    f

    #include<stdio.h>
    main()
    {
        int i,j,k,n=13;
        for(i=1;i<=7;i++)
        {
            for(j=1;j<i;j++)
                printf(" ");
            for(k=i;k<=(n-i+1);k++)
                printf("*");
            printf("
    ");
        }
    }

    #include<stdio.h>
    main()
    {
        int i,j,k,n,m;
        scanf("%d",&m);
        n=2*m-1;
        for(i=1;i<=m;i++)
        {
            for(j=1;j<i;j++)
                printf(" ");
            for(k=i;k<=(n-i+1);k++)
                printf("*");
            printf("
    ");
        }
    }

    三、课后习题

    #include<stdio.h>
    main()
    {
     int i,j,k;
     for(i=1;i<=5;i++)
     {
      for(j=1;j<=i;j++)
      printf(" ");
      for(k=1;k<=7;k++)
      printf("*");
      printf(" ");
     }
     for(i=1;i<=4;i++)
     {
      for(j=i;j<=4;j++)
      printf(" ");
      for(k=1;k<=7;k++)
      printf("*");
      printf(" ");
     }
    }

     思路:

    对此,我先将该图案分割成两部分,上面五行,下面四行。上面五行第一行一个空格,第二行两个空格……以此类推,可以得出空格与行数的规律,星号每行比前一行突出一个,因此可以得出前五行代码。后面四行与上面的相反,第一行四个空格,第二行三个空格……,星号每一行比上一行缩进一个,依次类推,可以得出下面四行代码。

    流程图:

    四、课后小结

            通过本章学习,我可以知道规则图形都可以举一反三的按照上面来,较复杂的图形可以将图形分为几部分,化繁为简。希望可以更多接触算法,感觉画流程图有点困难。通过这几个图案的代码,对学习C语言有了些感觉。我想,后面可能会比之前简单。

  • 相关阅读:
    vue路由跳转时更改页面title
    vue:axios二次封装,接口统一存放
    https://github.com/simple-uploader/vue-uploader/blob/master/README_zh-CN.md
    基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件
    前端三大主流框架的对比React、Vue、Angular 所谓是是三分天下
    React前端框架以及和Vue的对比
    Win10远程桌面:身份验证错误要求的函数不受支持的解决方法
    经典案例模块——20200404
    流的新认知
    网络编程
  • 原文地址:https://www.cnblogs.com/x-y-f/p/10701937.html
Copyright © 2011-2022 走看看