第五章 循环结构课后反思

正确代码:

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

运行结果:

错误代码:

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

运行结果:

这两个代码是我做第一个图形的两个代码,下面那个错误错误代码是我一开始的代码,运行结果与图形有很大的区别,但两个代码却几乎一模一样,只是第二个for(j)的取值不一样而已,正确代码是for(j=i),错误代码是for(j=1),这就导致了运行结果的不一样,我个人认为我们要弄清楚for(j)的取值与其后面的(j<=)的取值的关系就可以了。我觉得这是一个很关键的点,我在做题目的时候先将图形分为上下两部分,然后每一部分在分析他们是先输入空格还是*号,最后再找行数(i)的取值与空格或者*号之间的函数关系,我觉得找出行数(i)与空格或者*号之间的函数关系,题目也就迎刃而解了。

课内反思:

这章主要是讲循环结构,我掌握了for语句;while语句;do-while语句的基本用法以及它们的一些用法和它们之间不一样的特点及适用情况;然后还学习了break语句和continue语句在循环结构中的用法与区别;最后还掌握了循环结构的嵌套。同时我认为循环结构的嵌套是难点。

原文地址:https://www.cnblogs.com/Angle1998----/p/10697781.html