时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:2263
解决:1501
题目描述:输入一个N*N的矩阵,将其转置后输出。要求:不得使用任何数组(就地逆置)。
输入:输入的第一行包括一个整数N,(1<=N<=100),代表矩阵的维数。 接下来的N行每行有N个整数,分别代表矩阵的元素。
输出:可能有多组测试数据,对于每组数据,将输入的矩阵转置后输出。
样例输入: 3 1 2 3 4 5 6 7 8 9 样例输出: 1 4 7 2 5 8 3 6 9 解题过程:很简单的数学题 源代码: #include <stdio.h> #define MAXNUM 105 int main(){ int b[MAXNUM][MAXNUM],a[MAXNUM][MAXNUM]; int n,j,i,t1,t2,x,y; int temp; while ( scanf ( "%d" ,&n)!=EOF){ for (i=0;i<n;i++) for (j=0;j<n;j++) scanf ( "%d" ,&a[i][j]); for (i=0;i<n;i++) for (j=0;j<n;j++) b[i][j]=a[j][i]; for (i=0;i<n;i++){ for (j=0;j<n-1;j++){ printf ( "%d " ,b[i][j]); } printf ( "%d\n" ,b[i][n-1]); } } return 0; } /************************************************************** Problem: 1193 User: kaoyandaren123 Language: C Result: Accepted Time:10 ms Memory:920 kb ****************************************************************/