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

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

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

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

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

ToTensor's avatar
ToTensor 已提交
38 39 40 41 42 43 44
提示:

```json
对一个方阵转置,就是把原来的行号变列号,原来的列号变行号
```


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

每日一练社区's avatar
每日一练社区 已提交
49 50 51 52 53 54 55 56 57 58 59 60 61
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];
        }
    }
ToTensor's avatar
ToTensor 已提交
62
    __________________;
每日一练社区's avatar
每日一练社区 已提交
63 64 65 66 67 68
    return 0;
}
```

## 答案

每日一练社区's avatar
每日一练社区 已提交
69
```c
ToTensor's avatar
ToTensor 已提交
70 71 72
for (i = 0; i < n; i++)
{
    for (j = 0; j < m; j++)
每日一练社区's avatar
每日一练社区 已提交
73
    {
ToTensor's avatar
ToTensor 已提交
74
        cout << a[i][j] << " ";
每日一练社区's avatar
每日一练社区 已提交
75
    }
ToTensor's avatar
ToTensor 已提交
76 77
    cout << endl;
}
每日一练社区's avatar
每日一练社区 已提交
78 79 80
```
## 选项

F
fix bug  
feilong 已提交
81

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

每日一练社区's avatar
每日一练社区 已提交
84
```c
ToTensor's avatar
ToTensor 已提交
85 86 87
for (i = 0; i < n; i++)
{
    for (j = 0; j < m; j++)
每日一练社区's avatar
每日一练社区 已提交
88
    {
ToTensor's avatar
ToTensor 已提交
89
        cout << a[i-1][j] << " ";
每日一练社区's avatar
每日一练社区 已提交
90
    }
ToTensor's avatar
ToTensor 已提交
91 92
    cout << endl;
}
每日一练社区's avatar
每日一练社区 已提交
93 94 95
```

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

每日一练社区's avatar
每日一练社区 已提交
97
```c
ToTensor's avatar
ToTensor 已提交
98 99 100
for (i = 0; i < n; i++)
{
    for (j = 0; j < m; j++)
每日一练社区's avatar
每日一练社区 已提交
101
    {
ToTensor's avatar
ToTensor 已提交
102
        cout << a[i][j-1] << " ";
每日一练社区's avatar
每日一练社区 已提交
103
    }
ToTensor's avatar
ToTensor 已提交
104 105
    cout << endl;
}
每日一练社区's avatar
每日一练社区 已提交
106 107 108
```

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

每日一练社区's avatar
每日一练社区 已提交
110
```c
ToTensor's avatar
ToTensor 已提交
111 112 113
for (i = 0; i < n; i++)
{
    for (j = 0; j < m; j++)
每日一练社区's avatar
每日一练社区 已提交
114
    {
ToTensor's avatar
ToTensor 已提交
115
        cout << a[i-1][j-1] << " ";
每日一练社区's avatar
每日一练社区 已提交
116
    }
ToTensor's avatar
ToTensor 已提交
117 118
    cout << endl;
}
每日一练社区's avatar
每日一练社区 已提交
119
```