题解 | #矩阵转置#

矩阵转置

http://www.nowcoder.com/practice/0fe4d131737d4138912c3b5df8569245

#include<cstdio>
#include<iostream>

using namespace std;

const int MAXN = 100 + 10;

struct Matrix {
	int row;
	int col;
	int matrix[MAXN][MAXN];
	Matrix() {}
	Matrix(int r,int c):row(r),col(c) {}
};

void InputMatrix(Matrix& x) {
	for(int i = 0; i < x.row; ++i) {
		for(int j = 0; j < x.col; ++j) {
			scanf("%d",&x.matrix[i][j]);
		}
	}
}

void OutputMatrix(Matrix x) {
	for(int i = 0; i < x.row; ++i) {
		for(int j = 0; j < x.col; ++j) {
			printf("%d ",x.matrix[i][j]);
		}
		printf("\n");
	}
}


Matrix Transfer(Matrix x) {
	Matrix result = Matrix(x.col,x.row);
	for(int i = 0; i < x.row; ++i) {
		for(int j = 0; j < x.col; ++j) {
			result.matrix[j][i] = x.matrix[i][j];   // 不能写成result.matrix[i][j] = x.matrix[j][i];
		}
	}
	return result;
}

int main() {
	int n;
	while(scanf("%d",&n) != EOF) {
		Matrix x(n,n);
		InputMatrix(x);
		OutputMatrix(Transfer(x));
	}
	return 0;
}
全部评论

相关推荐

02-12 00:59
已编辑
哈尔滨工业大学 产品经理
华为 软件开发岗 20.6*16薪 本科
点赞 评论 收藏
分享
点赞 评论 收藏
分享
浪子陪都:简历最优秀的地方放到了后面,国奖,校级奖学金这些是最亮眼的。说明你跟同级别的学生不一样。 建议台灯这个,PCB布局布线这个词汇不专业,业内是PCB Layout,第二,单片机的板子一般不用考虑SI,PI 都是低速信号,只要遵循3W原则就好了。 单片机的项目太low了,技能这块,你要看一下BOSS直聘的招聘要求,按照别人的要求写,一些关键词可以增加你简历被检索到的概率。 主修课程不用写,这个没有人去关注的。
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务