题目描述:
废话现在有一个软件,可以让他的英雄按照输入的矩阵行走。已知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
解题思路:
本来想按着题目意思规规矩矩写,然后发现有点小麻烦,,于是,,拿出草稿纸确认了一遍自己的想法。。。。
当输入为 3 时:
数组为:
00 01 02
10 11 12 --> 你会发现,输出为1的元素 行列下标之和为2 (3-1)
20 21 22
同理,2 时:
00 01
10 11 --> 和为1 (2-1)
于是。。。。。
注意事项:
既然都到这步了,就稍微注意一下格式就好了,,
1,多组数据
2,元素之间是有一个空格的
3,矩阵输出完毕换行
参考代码:
#include<iostream> using namespace std; int main(){ int n; while(cin>>n){ //多组数据 int a[n][n]; for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ if(i+j==n-1) a[i][j]=1; else a[i][j]=0; } } for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ cout<<a[i][j]<<" ";//空格 } cout<<endl; } cout<<endl;//换行 } return 0; }
就是这么简单啦~~ 有啥不懂的可以留言哦~
排版系统升级了 有点不会用 哈哈哈
页面就这样啦
不要吝惜你的点赞哦~
0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复