为了账号安全,请及时绑定邮箱和手机立即绑定

求大佬给我解答一下,本人菜鸟

为什么i要等于j呢,空格这么看出来的呢?

正在回答

1 回答

是j=i,将i的值赋给j,其中i表示行数,从首行开始空格数分别为4,3,2,1;;;;;“*”号数分别为1,2,3,4

由此可知

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

在原题当中呢,首行空格其实是3也有可能,但是

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

这是一开始的代码,其实在实验的时候可以直接将j赋值,本地编译器会通过,也没有问题,

其实让j=i,每一次循环j都会进行初始化

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926206    人
  • 解答问题       20797    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

求大佬给我解答一下,本人菜鸟

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信