求菱形图 有没有简单点的
程序代码:
#include <stdio.h> #include <math.h> void main() { int n,i,j,q; float m; for(n=1;n<=20;n++) //直接求出来1-20范围的菱形图形,下面的输入语句省略 { printf("%d\n",n); m=((float)n+1)/2; if(n%2==1) { for(i=1;i<=n;i++) for(j=1;j<=n;j++) { if(fabs(fabs(i-m)-m)<=fabs(j-m)) printf(" "); else printf(" *"); if(j==n) printf("\n"); } } else { for(i=1;i<=n;i++) for(j=1;j<=n;j++) { if(fabs(fabs(i-m)-m)<=n/2-fabs(fabs(j-m)-m)) printf(" "); else printf(" *"); if(j==n) printf("\n"); } } } }