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

    本章重点、难点:

    • 本章重点讲了3种循环语句:for语句、while语句和do-while语句,另外还了解了if语句和goto语句组合构成的循环。
    • 一般情况下,三种循环语句都可以用来处理同一类问题,但当循环次数是肯定的时候,for循环比较方便。
    • while循环和for循环都要先判断条件再执行循环语句,所以,有可能一次也不执行循环体语句,而do-while循环不论怎样都会先执行一次循环语句。
    • break语句既可用于switch语句结构,又可用于循环语句结构,其作用是跳出控制结构语句。而continue语句不会中止循环,而是在<循环语句体>没有执行完的情况下,结束当前循环,提前进入下一个循环。
    • break语句和continue语句都会破坏程序的结构化,使程序变成非结构化的程序,在解决问题时应该尽量避免使用这两种语句。
    • 循环体语句为复合语句,要加花括号。
    • 不能使程序发生无限循环发生数据溢出。
    • 不能混淆了break语句和continue语句的功能。

    思考题:

    1、

    方法一:

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

    方法二:

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

    运行结果:


    做这道题的时候因为刚上完课,脑子里都在想老师上课讲例题时教的空格和星号一起用的方法,所以我在做这个图案的时候一直在构思空格该用什么表达式来表示,后来推敲出了上面的部分应该用(2i-1),下面的部分用(n-2i)表示,室友看到了却说我想的太复杂了,其实用老师上课讲的第一第二个例子就可以解决了,完全不用考虑空格该怎么写表达式,转念一想好像有点道理,代码敲出来后一对比,我之前想的确实是过于复杂了。

    2、

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

    运行结果:


    做这个图案的时候其实我本来想做另外一个图案的,打完代码运行出来发现它的下面一部分和这个图案一模一样,所以临时决定做这个图案了。这个图案前五行分别是由四个空格、三个空格、两个空格、一个空格、0个空格和七个星号组成,所以空格的表达式我是用(j=i;j<5)来表示空格的,星号每一行都是七个,所以用的是(k=1;k<=7)表示;最后四行是由一个空格、两个空格、三个空格、四个空格和七个星号组成,刚好和前四行相反,便用(j=1;j<i+1)表示空格,(k=1;k<=7)表示星号。

    分享交流:

    我认为对我最大帮助的是黄志乾和戴求的博客,因为他们一个每次都很快就交了作业,一个写的非常的清晰明了,看完他们的作业之后让我对如何写作业有了一个大致的了解。

  • 相关阅读:
    Excel导入SQL数据库完整代码
    获取google地图经纬度
    设为首页、加入收藏 兼容代码
    破解电脑开机密码
    微软的面试题
    ashx文件中使用session
    MetaEdit、修改IIS链接人数限制
    男人戴戒指的意义
    .Net/C#中Cache的用法
    SharedPreferences用于存储数据
  • 原文地址:https://www.cnblogs.com/luolongmei/p/10689389.html
Copyright © 2011-2022 走看看