用坐标打印沙漏菱形的一个思路
可以把构成沙漏的点和空格点在坐标上表示出来,沙漏的边就是两个一元一次方程。
如果输入的沙漏层高为5,则L1为;x+y=4;
L2为;y=x;
小于L1,大于L2的和大于L1,小于L2输出空格,其余输出*;
#include<stdio.h>
int main(){
int n,x,y;
scanf("%d",&n);
for(x=0;x<n;x++){
for(y=0;y<n;y++){
if(x+y < n-1 && y < x)
printf(" ");
else if(x+y > n-1 && y > x)
printf(" ");
else
printf("*");
}
printf("\n");
}
return 0;
}