当输入时,要根据列数的多少来进行分配...
如果根据行数的话会使空间重合。。。
输出时也要很据列数...
#include"stdio.h"
#include"stdlib.h"
int main()
{
int n,m,*p,i,j;
scanf("%d%d",&n,&m);
p=(int*)malloc(n*m*sizeof(int));
for(i=0;i<n;i++)
for(j=0;j<m;j++)
scanf("%d",p+m*i+j);//这里分配时要按照列数来分配!!!
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)//输出n个元素
printf("%d ",*(p+m*j+i));//输出时也要根据列数
printf("\n");
}
return 0;
}