矩阵转置c语言用指针
时间: 2023-12-08 12:37:11 浏览: 192
以下是使用指针实现矩阵转置的C语言代码:
```c
#include <stdio.h>
void transpose(int (*matrix)[100], int n);
int main() {
int n, matrix[100][100];
scanf("%d", &n);
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
scanf("%d", &matrix[i][j]);
}
}
transpose(matrix, n);
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
return 0;
}
void transpose(int (*matrix)[100], int n) {
for (int i = 0; i < n; i++) {
for (int j = i + 1; j < n; j++) {
int temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
}
```
该代码中,我们定义了一个`transpose`函数,该函数接受一个指向二维数组的指针和矩阵的大小`n`作为参数。在函数中,我们使用两个嵌套的循环来遍历矩阵,将矩阵的第`i`行和第`j`列的元素与第`j`行和第`i`列的元素交换。最后,在主函数中,我们调用`transpose`函数来转置矩阵,并输出转置后的矩阵。
阅读全文