二维数组的排序问题,来人教教我吧

二维数组升序排列输出
#include<stdio.h>
void main()
{
int a[3][4]={{12,5,20,60},{50,3,15,90},{45,62,30,25}};
int i,j,k;
for(i=0;i<11;i++)
for(j=0;j<12-i-1;j++)
然后后面的排序算法搞不懂
请各位大佬讲详细一点

你得先说清楚排序规则。把二维数组当一维数组排序更简单

#include<stdio.h>
void main()
{
int a[3][4]={{12,5,20,60},{50,3,15,90},{45,62,30,25}};
int *p = (int*)a;
int i,j,k;
for(i=0;i<11;i++)
for(j=0;j<12-i-1;j++)
{
    if(p[j] > p[j+1])
    {
        k = p[j];
        p[j] = p[j+1];
        p[j+1] = k;
    }
}

既然你已经想到了用一维数组的方式去遍历二维数组
那后面无非就是a[0][j]和a[0][j+1]比较和交换,标准冒泡排序

直接将二维数组化成一维数组排序就行了