放大的X
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 6694 Accepted Submission(s): 2010
Problem Description
请你编程画一个放大的’X’。
如3*3的’X’应如下所示:
如3*3的’X’应如下所示:
X X X X X 5*5的’X’如下所示: X X X X X X X X X
Input
输入数据第一行是一个整数T,表示有T组测试数据;
接下来有T行,每行有一个正奇数n(3 <= n <= 79),表示放大的规格。
接下来有T行,每行有一个正奇数n(3 <= n <= 79),表示放大的规格。
Output
对于每一个n打印一个规格为n * n放大的’X’;每组输出后面空一行。
Sample Input
2 3 5
Sample Output
X X X X X X X X X X X X X X/* 思路:坑爹的题,竟然在每行的x后面都不能有空格 即 X X X() X X X X X X() X()() X X() X X */ #include <stdio.h> #include <math.h> char s[80][80]; int main() { int t,n,i,j,k; scanf("%d",&t); for(k=1;k<=t;k++){ scanf("%d",&n); for(i=1;i<=n;i++) for(j=1;j<=n;j++){ if(i==j||i+j==n+1) s[i][j]='X'; else s[i][j]=' ';} for(i=1;i<=n;i++){ for(j=1;j<=(1+n)/2+fabs(i-(1+n)/2);j++) putchar(s[i][j]); putchar('\n'); } putchar('\n'); } return 0; }