第五章 循环结构课后反思

本章重点、难点:

第五章整个内容中重点应该是是for语句将图案表示出来和break语句及continue语句是什么时候跳出来的;难点我觉得是用for语句的方法将图案在计算机中表示出来,刚开始的时候可能听的一头雾水,但是只要了解i,j,k是什么和跟着老师的思路去每行每列去推的话还是能够看懂的。

 

掌握了哪些知识点

掌握的内容有for语句运用,while语句和do while语句及用于循环中的break语句和continuous语句;最后是一些循环嵌套结构。

课本案例详解:

书上108页的七个图案,前面六个来说还是比较简单的,都是大同小异的方法,弄懂第一个其他是没有问题的

1.第一个图案(我先分析的是前五行,在分析后面部分的,也还算简单。)

 

代码:

 

#include<stdio.h>
main()
{
    int i,j,k;        //i,j,k分别表示行,列,以及星星数。
    for (i=1;i<=5;i++)   
    {
        for (j=1;j<=5-i;j++)  
        printf(" ");
        for (k=1;k<=2*i-1;k++) 
        printf("*");
        printf("\n"); 
        
    }
    
    for (i=1;i<=5;i++)   
    {  
    for  (j=1;j<=i;j++)
        printf(" ");
        for (k=1;k<=9-2*i;k++)  
        printf("*");
        
        printf("\n"); 
    
    
}
}

2.第七个图案(我是对整个图形分成了四部分,按照由上到下的顺序写代码,刚开始对于第三.四部分的图有点无从下手,后面发现只要把这两个图形写在同一个for里面,再把空格和星星的顺序换一下就好了)

                             第一部分   

第二部分      第三部分       第四部分         第五部分 

代码:

#include<stdio.h>
main()
{
    int i,j,k;
    for (i=1;i<=5;i++)    
        {   
         for (j=1;j<=5-i;j++)  
                printf("   ");   //图案前五行的三角形 
         for (k=1;k<=2*i-1;k++) 
                printf(" * ");
                printf("\n"); } 
                
                
        for (i=1;i<=2;i++)  
        {
            for(j=1;j<=9;j++)     //中间两行*号 
                printf(" * ");
                    printf("\n");
        }
          
        for (i=1;i<=5;i++)   
        {   
        for(j=1; j<=(5-i);j++)   // 下面左边三角形表示 
               printf(" * "); 
        for(k=1;k<=(2*i-1);k++)
               printf("   ");
              
              
        for(j=1;j<=(5-i);j++)  
               printf(" * ");  //下面右边三角形的表示 
                  printf("\n");   
        }   
    }
        
   

总结:虽然还是对于for语句不是很熟悉,特别是图形的时候,容易弄错j会等于1还是i,但是还是摸索出了这一类题目规律,就是你找到每行每列的规律,然后在变一些就能得出,再就是的话就是善于分解图形,找到便捷的方法解决。

 

posted @ 2019-04-13 16:38  一只龟  阅读(164)  评论(0编辑  收藏  举报