编程,实现矩阵转置,即将一个n*m的矩阵的行和列互换。
编程,实现矩阵转置,即将一个n*m的矩阵的行和列互换。
- 提问者网友:niaiwoma
- 2021-07-25 22:34
- 五星知识达人网友:风格不统一
- 2021-07-26 00:00
vb 控制台程序:写在Sub Main()中
Const N = 2
Const M = 2
Dim i, j, temp As Integer
Dim arr(M, N) As Integer
Console.WriteLine("请为{0}*{1}维数组赋值:", M + 1, N + 1)
For i = 0 To M
For j = 0 To N
arr(i, j) = Val(Chr(Console.Read))
Next
Next
i = 0
For j = 0 To N
If (i <> j) Then
temp = arr(i, j)
arr(i, j) = arr(j, i)
arr(j, i) = temp
End If
Next
j = N
For i = 0 To M
If (i <> j) Then
temp = arr(i, j)
arr(i, j) = arr(j, i)
arr(j, i) = temp
End If
Next
For i = 0 To M
Console.WriteLine()
For j = 0 To N
Console.Write(arr(i, j))
Next
Next
Console.ReadKey()
- 1楼网友:十鸦
- 2021-07-26 02:35
下面的是C语言的代码,希望可以对你有所帮助
#include<stdio.h> #include<stdlib.h> #define N 5
void show(int arr[][N]) { int i, j; for(i=0; i<N; i++) { for(j=0; j<N; j++) printf("%-4d", arr[i][j] ); printf("\n"); } }
int main(void) { int arr[N][N], i, j, t; for( i=0; i<N*N; i++) arr[i/N][i%N]=i; show(arr); for( i=0; i<N; i++) for( j=i; j<N; j++) { t=arr[j][i]; arr[j][i]=arr[i][j]; arr[i][j]=t; } printf("\n\n"); show(arr); system("pause"); return 0; }
- 2楼网友:天凉才是好个秋
- 2021-07-26 01:18