其实图像转换就是数组下标找规律
#include<iostream>
using namespace std;
const int N=1000;
int a[N][N];//这个数组1000*1000 有点大
/*不放在主函数里
全局变量在静态存储区分配内存,局部变量是在栈上分配内存空间的,这么大的数组放到栈上不溢出吗?
VC堆栈默认是1M,int a[1000000]的大小是4*1000000,将近4M,远远大于1M,编译连接的时候不会有问题,但运行是堆栈溢出,程序异常终止。
如果你真的需要在堆栈上使用这么大的数组,那么可以在工程选项链接属性里设置合适的堆栈大小。*/
int main ()
{
int n,m;//若 a[N][N] 定义在这儿 ,会 程序异常终止。==不能输入数据
cin>>n>>m;
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
cin>>a[i][j];
//其实图像转换就是数组下标找规律
for(int j=m-1;j>=0;j--)//这儿j是递减的,所以j-- 若误写成j++会一直输出000;
{
for(int i=0;i<n;i++){
if(i!=0)
cout<<" ";
cout<<a[i][j];
}
//cout<<a[i][j]<<" ";
/*
for(int j=1;j<=m;j++)
{
for(int i=0;i<n;i++){
if(i!=0)
cout<<" ";
cout<<a[i][m-j];
} */
cout<<endl;
}
}