题意
给你个二维数组,让你把它顺时针旋转90°后输出。
题解
通过样例可以发现:第一列的数到第一行了,第二列的数到第二行了,第三列的数到第三行了,而且都是倒序。
那么可令\(j\)(代表第\(j\)列)从1m枚举,再令$i$(代表第$i$行)从n1(倒序)枚举,然后输出二维数组的\(i\),\(j\)即可。
代码
#include<bits/stdc++.h>
using namespace std;
int a[104][104];//定义二维数组
int main()
{
int n,m;cin>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>a[i][j];
for(int j=1;j<=m;j++)//枚举列
{
for(int i=n;i>=1;i--)cout<<a[i][j]<<" ";//枚举行并倒序输出
cout<<endl;//别忘了换行
}
return 0;
}