#include<iostream>
#include<ctime>
using namespace std;
#define number_i 3
#define number_j 3
int **get_disorder_arr()
{
//生成二维数组的指针
int **arr=new int* [number_i];//arr=(int**)malloc(sizeof(int*)*number_i)
int flag=0;
srand((unsigned int)time(NULL));
for (int i = 0; i < number_i; i++)
{
arr[i]=new int [number_j];//arr[i]=(int*)malloc(sizeof(int)*number_j)
for (int j = 0; j < number_j; j++)
{
//生成1~100的随机数
arr[i][j]=rand()%100+1;
cout<<arr[i][j]<<"\t";
}
//显示生成的数组
cout<<endl;
}
return arr;
}
void rotate90_arr(int **arr,char direction)
{
int temp[number_i][number_j];
if (direction=='1')
{
for (int i = 0; i < number_i; i++)
{
for (int j = 0; j < number_j; j++)
{
temp[i][j]=arr[j][number_i-1-i];
cout<<temp[i][j]<<"\t";
}
cout<<endl;
}
}
if (direction=='0')
{
for (int i = 0; i < number_i; i++)
{
for (int j = 0; j < number_j; j++)
{
temp[i][j]=arr[number_j-1-j][i];
cout<<temp[i][j]<<"\t";
}
cout<<endl;
}
}
}
int main()
{
int **arr=get_disorder_arr();
cout<<"-------------------------"<<endl;
cout<<"输入顺时针旋转还是逆时针旋转\n(“0”:顺时针 “1”:逆时针)"<<endl;
char direction;
cin>>direction;
rotate90_arr(arr,direction);
for (int i = 0; i < number_i; i++)
{
delete arr[i];
}
delete arr;
return 0;
}