用嵌套循环结构打印一个图形

问题
打印这个图形

img


为什么代码的第五行的for中如果第一个分号前写上j=1,那么输出的就是正确图形,如果不写j=1,输出的就是我运行结果里的那个图形?我在定义j变量的时候有初始化j=1呀

问题相关代码,请勿粘贴截图
#include <stdio.h>
int main(){
    int i=1,j=1;
    for(;i<=3;i++){
        for(;j<=3-i;j++)printf(" ");
        for(j=1;j<=2*i-1;j++)printf("*");
        printf("\n");
    }
    for(i=2;i>0;i--){
        for(j=1;j<=3-i;j++)printf(" ");
        for(j=1;j<=2*i-1;j++)printf("*");
        printf("\n");
    }
}

运行结果

img

楼主,你看你第四行代码,有一个对j的操作哦,你可以更换不同的变量试一试,望采纳