用C语言编写函数void fun(int array[3][3]),实现矩阵(3行3列)的转置(即行列互换)
时间: 2023-06-14 10:08:28 浏览: 194
以下是用 C 语言编写的实现矩阵转置的函数:
```c
void fun(int array[3][3]) {
int temp;
for (int i = 0; i < 3; i++) {
for (int j = i + 1; j < 3; j++) {
temp = array[i][j];
array[i][j] = array[j][i];
array[j][i] = temp;
}
}
}
```
在这个函数中,我们使用两个嵌套的循环来遍历矩阵的所有元素,并将每个元素的值与其对应的行和列进行交换。具体来说,我们通过循环变量 `i` 和 `j` 分别表示矩阵的行和列,然后使用一个临时变量 `temp` 来暂存当前行列的元素值。接着,我们将该元素的值与其对应的行和列进行交换,即将 `array[i][j]` 的值赋给 `array[j][i]`,将 `array[j][i]` 的值赋给 `array[i][j]`。通过这种方式,我们就可以实现矩阵的转置。
相关问题
用c语言编写fun函数实现矩阵的转置
可以使用以下代码实现矩阵的转置:
```c
void fun(int matrix[][N], int row, int col) {
int i, j, temp;
for (i = 0; i < row; i++) {
for (j = i+1; j < col; j++) {
temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
}
```
其中,`matrix`是需要转置的矩阵,`row`和`col`分别表示矩阵的行数和列数。在函数内部,双重循环遍历矩阵的上三角元素,将其与对应的下三角元素进行交换,从而实现矩阵的转置。
用c语言编写函数,矩阵转置
以下是用C语言编写的矩阵转置函数:
```c
void transpose(int mat[][N], int tr[][N], int n)
{
int i, j;
for (i = 0; i < n; i++)
for (j = 0; j < n; j++)
tr[j][i] = mat[i][j];
}
```
其中,mat是原始矩阵,tr是转置后的矩阵,n是矩阵的阶数。函数中使用两个for循环遍历矩阵,将原始矩阵中每个元素赋值给转置矩阵对应的位置上。
阅读全文