输入一个正整数n,生成一个n*n的方阵,其中每个元素a[i][j] = i * n + j + 1(≤i≤n-1,≤j≤n-1)。然后将该方阵转置(行列互换)后输出。 c语言
时间: 2024-03-02 08:51:41 浏览: 132
好的,这个问题我可以帮您解答。下面是一个简单的 C 语言程序,用于生成 n*n 的方阵并将其转置输出:
```c
#include <stdio.h>
int main() {
int n, i, j;
printf("请输入正整数n:");
scanf("%d", &n);
int a[n][n], b[n][n];
// 生成方阵
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
a[i][j] = i * n + j + 1;
}
}
// 转置矩阵
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
b[j][i] = a[i][j];
}
}
// 输出矩阵
printf("原始矩阵:\n");
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
printf("%d ", a[i][j]);
}
printf("\n");
}
printf("转置矩阵:\n");
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
printf("%d ", b[i][j]);
}
printf("\n");
}
return 0;
}
```
您可以将这段代码复制到您的 C 语言编译器中运行,输入正整数 n 后,程序将生成 n*n 的方阵并将其转置输出。
阅读全文