矩阵转置

描述

输入N,和M,构建两个矩阵:A[N][M],B[M][N],M, N <50;

步骤1:输入M, N ; M, N <50;

步骤2:输入A[M][N];

步骤3:计算:B[N][M]=A[M][N];

步骤4:输出:B [M] [N];这有几个测试组

输入

每个数字都是整数;

输入M, N; M, N <50;以-1 -1结束

输入一个A[M] [N] ;

输出

B[M][N]

样例输入

2 3

1 2 3

4 5 6

-1 -1

样例输出

1 4

2 5

3 6

思路

矩阵转置满足a[i][j]==b[j][i];

code

cs 复制代码
#include<stdio.h>
int main()
{
    int n,m;
    while(scanf("%d%d",&n,&m)==2&&n!=-1&&m!=-1){
        int matrix[n][m];
        for(int i=0;i<n;i++){
            for(int j=0;j<m;j++){
                scanf("%d",&matrix[i][j]);    
            }
        }
        int i=0,j=0,reverse_matrix[m][n];
        for(int i=0;i<n;i++){
            for(int j=0;j<m;j++){
                reverse_matrix[j][i]=matrix[i][j]; 
            }
        }
        for(int i=0;i<m;i++){
            for(int j=0;j<n;j++){
                if(j<n-1) printf("%d ",reverse_matrix[i][j]); 
                else printf("%d",reverse_matrix[i][j]);
            }
            printf("\n");
        }
    }
    return 0;
}
相关推荐
Bona Sun12 小时前
单片机手搓掌上游戏机(二十)—pico运行doom之编译环境
c语言·c++·单片机·游戏机
我真不会起名字啊13 小时前
C、C++中的sprintf和stringstream的使用
java·c语言·c++
剪一朵云爱着15 小时前
PAT 1164 Good in C
c语言·开发语言
Molesidy17 小时前
【C】简易的环形缓冲区代码示例
c语言·开发语言
阿白的白日梦17 小时前
Windows下c/c++编译器MinGW-w64下载和安装
c语言·后端
水饺编程19 小时前
第3章,[标签 Win32] :WM_CREATE 消息的产生
c语言·c++·windows·visual studio
会员果汁19 小时前
双向链式队列-C语言
c语言·数据结构
C语言不精20 小时前
c语言-优雅的多级菜单设计与实现
c语言·开发语言·算法
star learning white21 小时前
xmC语言10
c语言·开发语言
福尔摩斯张1 天前
从Select到Epoll:深度解析Linux I/O多路复用演进之路(超详细)
linux·运维·服务器·c语言·网络