关于gotoxy()
输入n值,编程输出如下图形。
input
一个整数,范围在1到10之间。
output
排列成菱形的大写字符,首字符为z,以后依次为y,x...
sample input
3
sample output
z
y x
w v
u t
s
始终不明白那个gotoxy(x,y),为什么.......
#include <conio.h>
main(void)
{int i,j,k,x=10,y=10,n=1;char c[26];
c[0]=90;
for (j=0;j<26;j++)
{c[j+1]=c[j]-1;
printf("%c",c[j]);
}
clrscr();gotoxy(x,y);
printf("Game start! you can input a munber(X<0) to quit!\n");
printf("Please attention n is between 0 and 10!\n\n");
while(n >=0)
{
printf("\nplease input the number you want: ");
scanf("%d", &n);
if (n==0) {clrscr(); printf("Nothing!");}
if (n==1) {clrscr(); printf("%c",c[0]); }
if (n>1)
{clrscr();printf("%c",c[0]);
for (j=1,i=1;j<n,i<n;j=j+2,i++)
{if (i>13) break;
clrscr();
gotoxy(x-i,y+i);
printf("%c",c[j]);
}
x=x-i+1;
for (k=1;j<n-1,i<2*n-1,k<n;j=j+2,i++,k++)
{if (i>13) break;
gotoxy(x+k,y+i);
printf("%c",c[j]);
}
for (j=2,i=1;j<n,i<n;j=j+2,i++)
{if (i>12) break;
gotoxy(x-i,y+i);
printf("%c",c[j]);
}
x=x+i;
for (k=1;j<n-2,i<2*n-2,k<n;j=j+2,i++,k++)
{if (i>12) break;
gotoxy(x-k,y+i);
printf("%c",c[j]);
}
}
}
}