在c++示例代码中向左旋转矩阵90度

  • 本文关键字:旋转 90度 c++ 代码 matrix
  • 更新时间 :
  • 英文 :


我尝试使用此代码,但我无法获得所需的输出。我给出了一个3*3矩阵作为输入1 2 3|4 5 6| 7 8 9,结果矩阵预期为7 4 1 | 8 5 6| 9 6 3。

#include <bits/stdc++.h>
using namespace std;
int main(){
int size;
cin>>size;
int matrix[size][size];
for(int i=0;i<size;i++){
for(int j=0;j<size;j++){
cin>>matrix[i][j];
}
}
cout<<"Original Matrix"<<endl;
for(int i=0;i<size;i++){
for(int j=0;j<size;j++){
cout<<matrix[i][j]<<" ";
}
cout<<endl;
}
cout<<"After left rotating"<<endl;
int tempMatrix[size][size];
for(int i=0;i<size;i++){
for(int j=0;j<size;j++){
tempMatrix[i][j]=matrix[j][i];
}
}
for(int i=0;i<size;i++){
for(int j=0;j<size;j++){
cout<<tempMatrix[i][j]<<" ";
}
cout<<endl;
}
return 0;

}

#include <bits/stdc++.h>
using namespace std;

int main()
{
int size;
cin>>size;
int matrix[size][size];
for(int i=0;i<size;i++)
{
for(int j=0;j<size;j++)
{
cin>>matrix[i][j];
}
}
cout<<"Original Matrix"<<endl;
for(int i=0;i<size;i++)
{
for(int j=0;j<size;j++)
{
cout<<matrix[i][j]<<" ";
}
cout<<endl;
}
cout<<"After left rotating"<<endl;
int tempMatrix[size][size];
for(int i=0;i<size;i++)
{
for(int j=0;j<size;j++)
{
tempMatrix[i][j]=matrix[size-j-1][i];
}
}
for(int i=0;i<size;i++)
{
for(int j=0;j<size;j++)
{
cout<<tempMatrix[i][j]<<" ";
}
cout<<endl;
}
return 0;
}

希望这有效。谢谢。

相关内容

  • 没有找到相关文章

最新更新