不好意思,最近比较忙.<br />随便写了一个,不是很好.<br /><br />#include <stdio.h><br /><br />void print(int a[4][4]); <br />void sort(int *p); <br /><br />void main() <br />{ <br />int i,j; <br />int array[4][4]; <br />for (i=0;i <4;i++) <br />{ <br />printf(" input matrix:\n",i+1); <br />for(j=0;j <4;j++) <br />{ <br />scanf("%d",&array[i][j]); <br />}<br />} <br /><br />printf("\n input matrix :\n"); <br />print(array); <br /><br />sort(*array); <br /><br />printf("\n output matrix:\n"); <br />print(array);<br />getch();<br />} <br /><br />void print(int a[4][4]) <br />{ <br />int i,j; <br />for (i=0;i <4;i++) <br />{ <br />for(j=0;j <4;j++) <br />{ <br />printf("%4d",a[i][j]); <br />} <br />printf("\n"); <br />} <br />} <br /><br />void sort(int *p) <br />{ <br />int a[16]; <br />int i,j,temp; <br />for (i=0;i <15;i++) <br />{ <br />for(j=i+1;j <16;j++) <br />{ <br />if(p[j]<p[i] ){<br />temp=p[j]; <br />p[j]=p[i]; <br />p[i]=temp; <br />} <br />} <br />} <br />for (i=0;i <16;i++) <br />{ <br />a[i]=p[i]; <br />} <br /><br />for (i=3,j=0;j <4;j++,i+=4)<br />{ <br />p[i]=a[j];<br />}<br />for (i=14,j=4;j <=6;i--,j++)<br />{<br />p[i]=a[j];<br />}<br />for (i=8,j=7;j <=9;i-=4,j++)<br />{<br />p[i]=a[j];<br />}<br />for (i=1,j=10;j <=11;i++,j++)<br />{<br />p[i]=a[j];<br />}<br />for (i=6,j=12;j <=13;i+=4,j++)<br />{<br />p[i]=a[j];<br />}<br />p[9]=a[14];<br />p[5]=a[15];<br />}<br /><br /> <br /><br />