发新话题
打印

[原创]北航一道真题,矩阵的旋转

[原创]北航一道真题,矩阵的旋转

昨天 做的

#include <stdlib.h> /* For _MAX_PATH definition */ #include <stdio.h> #include <malloc.h>

/*动态分配二维数组,由于c语言里没有动态分配二维数组的 函数,我想来想去还是只有自己写一个了 */ int** myalloc(int r,int l) { int *p,**t,i; p=(int*)malloc(r*l*sizeof(int)); t=(int**)malloc(r*sizeof(int*)); for(i=0;i<r;i++) { t=p+l*i; } return t; }

void main() { int** a;int n; scanf("%d",&n); a=myalloc(n,n); int i,j,k,t; for(i=0;i<n;i++) { for(j=0;j<n;j++) { a[j]=i*n+j+1; } }

i=0;j=n-1; while(i<j) { for(k=0;k<j-i;k++) { t=a[i+k]; a[i+k]=a[j-k]; a[j-k]=a[j][j-k]; a[j][j-k]=a[i+k][j]; a[i+k][j]=t; } i++;j--; } for(i=0;i<n;i++) { for(j=0;j<n;j++) { printf("%d ",a[j]); } printf("\n"); }

}

/*输出 7 43 36 29 22 15 8 1 44 37 30 23 16 9 2 45 38 31 24 17 10 3 46 39 32 25 18 11 4 47 40 33 26 19 12 5 48 41 34 27 20 13 6 49 42 35 28 21 14 7 Press any key to continue */

骑着小猪学VC~~~~~~~~

TOP

好贴,精华收藏.鼓励一下,继续努力![em05]
多多交流.多多关照.

TOP

不错
一定要成功!

TOP

[em07]
骑着小猪学VC~~~~~~~~

TOP

看的头晕,强!看来我是真的对这不通

TOP

不如把精华顶上来看
版主

TOP

发新话题