概述
是这样的 因为编程要求,我先是声明了一个3列动态二维数组s[m][3],接下来是要根据s[i][3],就是第三列的数据对整个二维数组进行降序排序。我试验了一下倘若数据m比较小就可以实现排序,如果m比较大时,就不行了,更不要谈350000了
代码如下: MAX_LINES即为s的行数 谢谢各位
#define MAX_LINES 302
#include “stdlib.h”
#include “stdio.h”
int main()
{
///order
int (*s)[3];
int i,j;
int n;
int tempg;
int tempx;
int tempy;
n=MAX_LINES;
s=(int(*)[3])malloc(n*3*sizeof(int));
for(i=0;i
{s[i][1]=i;s[i][2]=i+1;s[i][3]=i;
printf(“%dn”,s[i][3]);
}
for(i = 0; i
for(j=i;j
//printf(“%dn”,j);
if(s[i][3]
{
tempx=s[i][1];
tempy=s[i][2];
tempg= s[i][3];
s[i][1] = s[j][1];
s[i][2] =s[j][2];
s[i][3] = s[j][3];
s[j][1]=tempx;
s[j][2]=tempy;
s[j][3]=tempg; }
}
}
for(i=0;i
printf(“%dn”,s[i][3]);
}
free(s);
return 0;
}
最后
以上就是感性豆芽为你收集整理的c语言用数组比较数的大小排序,我有个长度很大的一维数组怎么排序?的全部内容,希望文章能够帮你解决c语言用数组比较数的大小排序,我有个长度很大的一维数组怎么排序?所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复