c语言输入一个n×n的方阵,把其转置并输出。 输入格式: 测试数据有多组,处理到文件尾。对于每组测试,第一行输入一个整数n(n≤10),接下来的n行每行输入n个不超过2位的整数。 输出格式: 对于每组测试,输出这n×n矩阵的转置方阵,每行的每两个数据之间留一个空格。
时间: 2023-06-25 22:06:39 浏览: 48
以下是c语言实现的代码:
```c
#include <stdio.h>
int main()
{
int n;
while (scanf("%d", &n) != EOF) // 循环读入测试数据
{
int matrix[n][n];
// 读入矩阵
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
scanf("%d", &matrix[i][j]);
}
}
// 转置矩阵
for (int i = 0; i < n; i++)
{
for (int j = i; j < n; j++)
{
int temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
// 输出矩阵
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
printf("%d ", matrix[i][j]);
}
printf("\n");
}
}
return 0;
}
```
这里使用了一个二维数组来存储输入的矩阵,然后进行转置,最后输出转置后的矩阵。转置矩阵的方法是将矩阵中的每个元素与其对称元素交换位置。