c语言编程 输出空心倒三角形

#include<stdio.h>
int main()
{int n,i,j,k;i=j=k=1;
scanf("%d",&n);
for(i=1;i<=(2*n-1);i++)
printf("*");printf("\n");
for(j=1;j<=n-1;j++)
{for (k=1;k<2*n-1-j;k++)
if ((1<=k&&k<j+1)||(j+2<=k<2*n-1-j))
printf(" ");
if (k==j+1||k==2*n-1-j)
printf("*");printf("\n");
}
}
哪里有错误,我要输出空心倒三角形

#include<stdio.h>
int main()
{
    int n,i,j,k;i=j=k=1;
    scanf("%d",&n);
    for(i=1;i<=(2*n-1);i++)
        printf("*");
    printf("\n");
    for(j=1;j<=n-1;j++)
    {
        for (k=1;k<2*n-1;k++) //循环条件
        {
            if (k==j+1||k==2*n-1-j)  //输出星位
                printf("*");
            else
                printf(" ");
        }
        printf("\n");
    }
    return 0;
} 请注意注释的地方,自己思考一下原因,试运行一下

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-04-20
最后没有return0;
#include<stdio.h>
int main()
{int n,i,m,j,k;
scanf("%d",&n);
for(i=1;i<=2*n-1;i++)
printf("*");printf("\n");
for(j=0;j<(i-2)/2;j++)
{ for(m=0;m<j+1;m++)
printf(" ");
printf("*");
for(k=0;k<2*(n-j-2)-1;k++)
printf(" ");
if(j<(n-2))
printf("*\n");
}
return 0;
}
第2个回答  2014-04-21
没有输出左边*的代码