solution.md 1.6 KB
Newer Older
每日一练社区's avatar
每日一练社区 已提交
1
# 方阵转置
F
fix bug  
feilong 已提交
2

3
**问题描述**
每日一练社区's avatar
每日一练社区 已提交
4

F
fix bug  
feilong 已提交
5

每日一练社区's avatar
每日一练社区 已提交
6
给定一个n×m矩阵相乘,求它的转置。其中1≤n≤20,1≤m≤20,矩阵中的每个元素都在整数类型(4字节)的表示范围内。
7 8

**输入格式**
F
fix bug  
feilong 已提交
9

每日一练社区's avatar
每日一练社区 已提交
10
第一行两个整数n和m;  
每日一练社区's avatar
每日一练社区 已提交
11

每日一练社区's avatar
每日一练社区 已提交
12
第二行起,每行m个整数,共n行,表示n×m的矩阵。数据之间都用一个空格分隔。
13 14

**输出格式**
每日一练社区's avatar
每日一练社区 已提交
15

F
fix bug  
feilong 已提交
16

每日一练社区's avatar
每日一练社区 已提交
17
共m行,每行n个整数,数据间用一个空格分隔,表示转置后的矩阵。
18 19

**样例输入**
F
fix bug  
feilong 已提交
20

每日一练社区's avatar
每日一练社区 已提交
21 22 23 24 25
```
2 4
34 76 -54 7
-4 5 23 9
```
每日一练社区's avatar
每日一练社区 已提交
26

27
**样例输出**
F
fix bug  
feilong 已提交
28

每日一练社区's avatar
每日一练社区 已提交
29 30 31 32 33 34 35
```
34 -4
76 5
-54 23
7 9
```

F
fix bug  
feilong 已提交
36

每日一练社区's avatar
每日一练社区 已提交
37
请从以下四个选项中选择正确的代码填补空白处,实现方阵转置功能。
F
fix bug  
feilong 已提交
38

每日一练社区's avatar
每日一练社区 已提交
39
```c
每日一练社区's avatar
每日一练社区 已提交
40 41
#include <bits/stdc++.h>
using namespace std;
F
fix bug  
feilong 已提交
42

每日一练社区's avatar
每日一练社区 已提交
43 44 45 46 47 48 49 50 51 52 53 54 55
int main()
{
    int m, n;
    int a[20][20];
    int i, j;
    cin >> m >> n;
    for (i = 0; i < m; i++)
    {
        for (j = 0; j < n; j++)
        {
            cin >> a[j][i];
        }
    }
每日一练社区's avatar
每日一练社区 已提交
56 57 58 59 60 61 62
    __________________
    return 0;
}
```

## 答案

每日一练社区's avatar
每日一练社区 已提交
63
```c
每日一练社区's avatar
每日一练社区 已提交
64 65 66 67 68 69 70 71 72 73 74
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
        {
            cout << a[i][j] << " ";
        }
        cout << endl;
    }
```
## 选项

F
fix bug  
feilong 已提交
75

每日一练社区's avatar
每日一练社区 已提交
76
### A
F
fix bug  
feilong 已提交
77

每日一练社区's avatar
每日一练社区 已提交
78
```c
每日一练社区's avatar
每日一练社区 已提交
79 80
    for (i = 0; i < n; i++)
    {
每日一练社区's avatar
每日一练社区 已提交
81
        for (j = 0; j < m; j++)
每日一练社区's avatar
每日一练社区 已提交
82
        {
每日一练社区's avatar
每日一练社区 已提交
83
            cout << a[i-1][j] << " ";
每日一练社区's avatar
每日一练社区 已提交
84 85 86 87 88 89
        }
        cout << endl;
    }
```

### B
F
fix bug  
feilong 已提交
90

每日一练社区's avatar
每日一练社区 已提交
91
```c
每日一练社区's avatar
每日一练社区 已提交
92
    for (i = 0; i < n; i++)
每日一练社区's avatar
每日一练社区 已提交
93 94 95
    {
        for (j = 0; j < m; j++)
        {
每日一练社区's avatar
每日一练社区 已提交
96
            cout << a[i][j-1] << " ";
每日一练社区's avatar
每日一练社区 已提交
97 98 99 100 101 102
        }
        cout << endl;
    }
```

### C
F
fix bug  
feilong 已提交
103

每日一练社区's avatar
每日一练社区 已提交
104
```c
每日一练社区's avatar
每日一练社区 已提交
105
    for (i = 0; i < n; i++)
每日一练社区's avatar
每日一练社区 已提交
106
    {
每日一练社区's avatar
每日一练社区 已提交
107
        for (j = 0; j < m; j++)
每日一练社区's avatar
每日一练社区 已提交
108
        {
每日一练社区's avatar
每日一练社区 已提交
109
            cout << a[i-1][j-1] << " ";
每日一练社区's avatar
每日一练社区 已提交
110 111 112 113
        }
        cout << endl;
    }
```