c语言的编译问题??(急求)

来源:百度知道 编辑:UC知道 时间:2024/06/22 04:45:58
main()
{ int i,j,k;
for (i=1;i<=1;i=i+3)
{printf("");
for(j=1;j<=i;j++);
printf("*");}
printf("\n");
}

结果怎么*,应该是
*
***
关于*的问题??

你的这个循环条件 for (i=1;i<=1;i=i+3)只会执行一次啊 第二次i=i+3等于4就不满足i<=1这个条件了啊 所以循环体里的所有语句都只执行了一次 包括printf("*");
要打印出你说得图案可以这么写:我编译过了
int i,j,k;
for (i=1;i<=3;i=i+2)
{
for(k=3;k>=i;k--)
printf(" ");
for(j=1;j<=i;j++)
printf("*");
printf("\n");
}

for(j=1;j<=i;j++);
去掉后面的分号,即改为如下:

for(j=1;j<=i;j++)

去掉for(j=1;j<=i;j++); 的分号