第一次做图形 请指教
题目 :编写函数diamond打印一个菱形。如果调用diamond(3, '*'),则打印:*
* * *
*
如果调用diamond(5, '+'),则打印:
+
+ + +
+ + + + +
+ + +
+
如果用偶数做参数则打印错误信息。
我的程序如下:
#include<stdio.h>
#include<math.h>
void diamond(int n,char m)
{
int i,j,middle,distance;
for(i=1;i<=n;i++)
{
middle=(n+1)/2;
distance=fabs(i-middle);
for(j=1;j<=n;j++)
if(j<(middle-distance)) /*将m限制在每行的中心位置附近*/
printf("%c\t\t",m);
else
printf("\t\t\t");
}
}
int main()
{
int a;char b;
scanf("%d%c",a,b);
if(a%2==0)
printf("Wrong number!!");
else if(a>0)
diamond(a,b);
return 0;
}