题目描述:
废话他呆了,打了那么久DOTA 2 ,没见过这样的局。队友手了炸弹人和小娜迦,这局是要拖到什么时候啊。因此,废话决定要不停地送人头,让对面赶紧结束这场令他煎熬的比赛。
废话现在有一个软件,可以让他的英雄按照输入的矩阵行走。已知DOTA 2的地图是一个正方形,他只要输入单位转置矩阵就可以无限送人头了。
程序要求:输入正整数N(20>=N>0),输出一个N阶单位转置矩阵。
输入:
有多组数据,每组数据为一个2~20的正整数N。
输出:
请输出N阶单位转置矩阵,输出一个矩阵之后,请再输出一个空行。
样例输入:
3
2
样例输出:
0 0 1
0 1 0
1 0 0
0 1
1 0
分析:这道题本身不难,要注意几个点,第一就是其中的规律:什么时候输出一,什么时候输出0,第二就是每一个测试用例完成之后,要注意换一行。
OK,费话不多说,直接上代码:(有需要自取)
include<stdio.h>
int main(void)
{
int i,j,n; int a=1,b=0; while(scanf("%d",&n)!=EOF) { for(i=0;i<n;i++) { for(j=1;j<=n;j++) { if(j!=n) { if(j==n-i) { printf("%d ",a); }else{ printf("%d ",b); } }else{ if(j==n-i) { printf("%d\n",a); }else{ printf("%d\n",b); } } } } printf("\n"); } return 0;
}