要求用C语言,不过我对C不是很熟,只在内存分配的时候使用了C,但并没有释放内存算是失误吧。
int *arrayPrint(int**arr,int n) { int*result=(int*)malloc(sizeof(int)*n*n); int i,j,count=0;; for(int m=n;m>0;m--)//右上到对角线 { j=m-1; for(i=0;i<=n-m;i++) { result[count]=arr[i][j]; count++; j++; } } for(int m=n-1;m>0;m--)//打印左下的三角 { j=0; for(i=n-m;i<n;i++) { result[count]=arr[i][j]; count++; j++; } } std::cout<<std::endl; return result; }
时间: 2024-09-29 01:06:19