问答详情
源自:4-12 循环结构之多重循环

运行成功,输入错误 *** *** *** *** 这是为什么

#include <stdio.h>
int main()
{
    int i, j, k;
    for(i=1; i<5; i++)
    {
        /* 观察每行的空格数量,补全循环条件 */
        for(    j = 1;j < 6;j += 2  ) 
        {
            printf(" ");    //输出空格
        }
        /* 观察每行*号的数量,补全循环条件 */
        for( k = 1 ;  k<7 ;  k+=2   )
        {
            printf("*");   //每行输出的*号
        }
        printf("\n");     //每次循环换行
    }
    return 0;
}

提问者:qq_我要瘦十斤_0 2017-11-11 19:55

个回答

  • weibo_FANG的日常_0
    2017-11-12 17:11:04

    因为你的代码里{
            /* 观察每行的空格数量,补全循环条件 */
            for(    j = 1;j < 6;j += 2  ) 
            {
                printf(" ");    //输出空格
            }
            /* 观察每行*号的数量,补全循环条件 */
            for( k = 1 ;  k<7 ;  k+=2   )
            {
                printf("*");   //每行输出的*号
            }
            printf("\n");     //每次循环换行
        }是一开始for的第三步,每一次这个第三步结束时i会+1而这个第三步里的j和k会被重新赋值为1,不会随着i的改变而改变,故每一行都是一样的