您的位置:首页 > 健康 > 美食 > 北京展板设计制作公司_网络规划设计师教程 下载_系统设置友情链接有什么作用_seo刷网站

北京展板设计制作公司_网络规划设计师教程 下载_系统设置友情链接有什么作用_seo刷网站

2024/12/27 6:46:46 来源:https://blog.csdn.net/qq_41840843/article/details/144169107  浏览:    关键词:北京展板设计制作公司_网络规划设计师教程 下载_系统设置友情链接有什么作用_seo刷网站
北京展板设计制作公司_网络规划设计师教程 下载_系统设置友情链接有什么作用_seo刷网站

矩阵转置

      • C语言代码
      • C++ 语言代码
      • Java语言代码
      • Python语言代码


💐The Begin💐点点关注,收藏不迷路💐

输入一个n行m列的矩阵A,输出它的转置 A T A^T AT

输入

第一行包含两个整数n和m,表示矩阵A的行数和列数。1 <= n <= 100,1 <= m <= 100。
接下来n行,每行m个整数,表示矩阵A的元素。相邻两个整数之间用单个空格隔开,每个元素均在1~1000之间。

输出

m行,每行n个整数,为矩阵A的转置。相邻两个整数之间用单个空格隔开。

样例输入

3 3
1 2 3
4 5 6
7 8 9

样例输出

1 4 7
2 5 8
3 6 9

先获取矩阵的行数和列数,接着读取原矩阵的元素内容,然后按照矩阵转置的规则(即将原矩阵的行元素变为转置矩阵的列元素,原矩阵的列元素变为转置矩阵的行元素)来构建转置矩阵,最后按照要求的格式输出转置后的矩阵。

C语言代码

#include <stdio.h>int main() {int n, m;scanf("%d %d", &n, &m);  // 读取矩阵的行数n和列数mint matrix[n][m];  // 定义二维数组存储原矩阵元素int transpose[m][n];  // 定义二维数组存储转置后的矩阵元素// 1. 读取原矩阵元素for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {scanf("%d", &matrix[i][j]);  // 逐行逐列读取原矩阵元素}}// 2. 进行矩阵转置操作,将原矩阵元素赋值到转置矩阵对应位置for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {transpose[j][i] = matrix[i][j];  // 原矩阵的第i行第j列元素赋值到转置矩阵的第j行第i列}}// 3. 输出转置后的矩阵for (int i = 0; i < m; i++) {for (int j = 0; j < n; j++) {printf("%d ", transpose[i][j]);  // 逐行逐列输出转置矩阵元素}printf("\n");}return 0;
}

C++ 语言代码

#include <iostream>
using namespace std;int main() {int n, m;cin >> n >> m;  // 输入矩阵的行数n和列数mint matrix[n][m];  // 创建二维数组存储原矩阵元素int transpose[m][n];  // 创建二维数组存储转置后的矩阵元素// 1. 输入原矩阵元素for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {cin >> matrix[i][j];  // 逐行逐列输入原矩阵元素}}// 2. 执行矩阵转置,把原矩阵元素按规则赋给转置矩阵for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {transpose[j][i] = matrix[i][j];  // 原矩阵的第i行第j列元素给到转置矩阵的第j行第i列}}// 3. 输出转置后的矩阵for (int i = 0; i < m; i++) {for (int j = 0; j < n; j++) {cout << transpose[i][j] << " ";  // 逐行逐列输出转置矩阵元素}cout << endl;}return 0;
}

Java语言代码

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();  // 获取矩阵的行数nint m = scanner.nextInt();  // 获取矩阵的列数mint[][] matrix = new int[n][m];  // 定义二维数组存储原矩阵元素int[][] transpose = new int[m][n];  // 定义二维数组存储转置后的矩阵元素// 1. 读取原矩阵元素for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {matrix[i][j] = scanner.nextInt();  // 逐行逐列读取原矩阵元素并存入数组}}// 2. 进行矩阵转置,将原矩阵元素按对应位置赋给转置矩阵for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {transpose[j][i] = matrix[i][j];  // 原矩阵的第i行第j列元素赋值到转置矩阵的第j行第i列}}// 3. 输出转置后的矩阵for (int i = 0; i < m; i++) {for (int j = 0; j < n; j++) {System.out.print(transpose[i][j] + " ");  // 逐行逐列输出转置矩阵元素}System.out.println();}}
}

Python语言代码

n, m = map(int, input().split())  # 获取输入矩阵的行数n和列数m
matrix = [list(map(int, input().split())) for _ in range(n)]  # 获取原矩阵元素,构建二维列表transpose = [[matrix[j][i] for j in range(n)] for i in range(m)]  # 使用列表推导式进行矩阵转置操作# 输出转置后的矩阵
for row in transpose:print(" ".join(map(str, row)))  # 将每行的整数列表转换为字符串,用空格连接后输出

在这里插入图片描述


💐The End💐点点关注,收藏不迷路💐

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com