Run ID:78460

提交时间:2024-06-22 09:34:23

#include <iostream> #include <vector> // 定义矩阵的大小 const int SIZE = 3; // 函数声明 void transpose_matrix(std::vector<std::vector<int>>& matrix); int main() { // 使用std::vector来存储3x3矩阵 std::vector<std::vector<int>> matrix(SIZE, std::vector<int>(SIZE)); // 读取输入的3x3矩阵 for (int i = 0; i < SIZE; ++i) { for (int j = 0; j < SIZE; ++j) { std::cin >> matrix[i][j]; } } // 转置矩阵 transpose_matrix(matrix); // 输出转置后的矩阵 for (int i = 0; i < SIZE; ++i) { for (int j = 0; j < SIZE; ++j) { std::cout << matrix[j][i] << " "; // 转置后的索引是 j 行 i 列 } std::cout << std::endl; } return 0; } // 函数定义:转置矩阵 void transpose_matrix(std::vector<std::vector<int>>& matrix) { for (int i = 0; i < SIZE; ++i) { for (int j = i + 1; j < SIZE; ++j) { // 交换元素 std::swap(matrix[i][j], matrix[j][i]); } } }