金字塔问题 错在哪了 谢谢

图片说明
*




感觉你这个程序的逻辑有点问题,还是我理解的有问题了?

for后面接分号是什么意思。。。

 #include <stdio.h>

int main(void)
{
    int n,i,k=-2,j;

    for(n=1; n<=4; n++)
    {
        for(i=1; i<=4-n; i++)
            printf(" ");
        for(j=1; j<=k+3; j++)
            printf("*");
        k=k+2;
        printf("\n");
    }

    return 0;
}

楼主,注意你的分号,另外第一层和下一层可以增减两个*,才能更好地体现对称。(中间空格可能是1个,你试试,因为我用的是在线编译系统,肯定有偏差)