PAT1027的打印沙漏 怎么错的啊,有大佬看看吗?
#include<stdio.h>
#include<math.h>
int main()
{
int n,m,i,j,s,a;
char c;
scanf("%d",&n);
getchar();
scanf("%c",&c);
for(a=1;2*a*a-1<=n;a++)
{
m = a;
}
for(i=m;i>0;i--)
{
sczf(m-i);
scsz(2*i-1);
printf("\n");
}
for(i=2;i<=m;i++)
{
sczf(m-i);
scsz(2*i-1);
printf("\n");
}
if(n!=0)
printf("%d",n-(2*m*m-1));
else printf("0");
}
void scsz(int n)
{
int i;
for(i=0;i<n;i++)
printf("*");
}
void sczf(int n)
{
int i;
for(i=0;i<n;i++)
printf(" ");
}