请看以下c语言程序

来源:百度知道 编辑:UC知道 时间:2024/05/11 03:35:01
#include <stdio.h>
void main()
{int i,j,k;
for (i=0;i<=3;i=++)
{for (j=0;j<=2-i;j++)
printf(" ");
for(k=0;k<=2*i;k++)
printf("* ");
printf("\n");
}
for(i=0;i<=2;i++)
{for(j=0;j<=i;j++)
printf(" ");
for(k=0;k<=4-2*i;k++)
printf("*");
printf("\n");
}
}
想用来输出以下图案
*
***
*****
*******
*****
***
*
请问程序哪里错了

#include <stdio.h>
void main()
{int i,j,k;
for (i=0;i<=3;i++)
{for (j=0;j<=2-i;j++)
printf(" ");
for(k=0;k<=2*i;k++)
printf("*"); //多了个空格
printf("\n");
}
for(i=0;i<=2;i++)
{for(j=0;j<=i;j++)
printf(" ");
for(k=0;k<=4-2*i;k++)
printf("*");
printf("\n");
}
}
这就对了!
另外给你个可以更完全的程序如下:
#include<stdio.h>
void main(){
int i,n,j,k=2;
printf("Please input the data:\n");
scanf("%d",&n);
for(i=1;i+1;i+=k){ //每次循环打印一行
for(j=0;j<(n-i)/2;j++)printf(" ");
for(j=0;j<i;j++)printf("*");
printf("\n");
if (i==n)k=-2;
}
}
其中需要输入的n(n必须是奇数)是菱形中间最长的那一行的长度,比如你要的图应该是7

多一层循环吧
#include <stdio.h>
void main()
{
int i,j,k;