改变储存位置,输出顺序不变:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int m, n;
cin >> m >> n;
int a[n][n];
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
cin >> a[i][(j+m)%n];
}
}
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
cout << a[i][j] << " ";
}
cout << endl;
}
return 0;
}
储存位置不变,输出顺序改变:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int m, n;
cin >> m >> n;
int a[n][n];
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
cin >> a[i][j];
}
}
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
cout << a[i][(n-m%n+j)%n] << " ";
}
cout << endl;
}
return 0;
}