21xrx.com
2025-03-24 00:37:16 Monday
文章检索 我的文章 写文章
C++实现矩阵旋转输出
2023-07-10 13:46:12 深夜i     --     --
C++ 矩阵 旋转 输出 实现

本文将介绍如何使用C++实现矩阵的旋转输出。矩阵旋转输出是一个常见的编程问题,通过将一个矩阵逆时针旋转90度后输出,可以在一定程度上提高代码的可读性和实现的效率。

首先,我们需要定义一个矩阵并初始化,如下所示:

int matrix[3][3] = { 3, 4, 9};

接下来,我们可以使用以下代码来实现矩阵旋转:

for(int i = 0; i < 3; i++){
  for(int j = i+1; j < 3; j++){
    swap(matrix[i][j], matrix[j][i]);
  }
}
for(int i = 0; i < 3; i++){
  reverse(matrix[i], matrix[i]+3);
}

上述代码中,我们首先使用两层循环逆时针旋转了矩阵90度,然后使用reverse函数将矩阵中的每一行翻转,最终得到了矩阵的旋转输出结果。

完整的代码如下所示:

#include<iostream>
#include<algorithm>
using namespace std;
int main(){
  int matrix[3][3] = { 2, 6, 8}; //定义并初始化矩阵
  //逆时针旋转矩阵90度
  for(int i = 0; i < 3; i++){
    for(int j = i+1; j < 3; j++){
      swap(matrix[i][j], matrix[j][i]);
    }
  }
  //翻转每一行
  for(int i = 0; i < 3; i++){
    reverse(matrix[i], matrix[i]+3);
  }
  //输出旋转后的矩阵
  for(int i = 0; i < 3; i++){
    for(int j = 0; j < 3; j++){
      cout << matrix[i][j] << " ";
    }
    cout << endl;
  }
  return 0;
}

通过上述代码,我们成功实现了矩阵的逆时针旋转90度,并输出了旋转后的结果。这个方法简单、高效、易于理解,适用于各种大小的矩阵,是值得推荐的一种实现方式。

  
  

评论区