[C语言]排序问题

有一个文件名为num.txt的文本文件,里面有1千万个随机数,这些数字的大小在0~1亿之间,存储方式如下:

 

5422232
23232
45
4345232
676575
.......

要求:

1.写一个程序来读取这个文件中的数字,并从大到小排序后以上面的格式存储为 num_b.txt

2.内存占用不可超过1MB

 

 

 

注意:

   不要在程序中加入自己的程序运行时间计算,我们会使用time -f "%e" 来计算。

   程序最好使用c99标准编写,保证可以使用gcc编译。

 

程序运行时间最短者胜出。

 

截止日期:3月1日。

=========================================================

附:num.txt的生成程序:

 

 
#include <stdio.h>
#include
<stdlib.h>
#include
<time.h>

int main(void)
{
FILE
*fp = fopen("num.txt", "w");
int i = 0;
srand(time(NULL));
for(; i<10000000; i++)
{
fprintf(fp,
"%d\n", rand()%10000000);
}
fclose(fp);
return 0;
}
posted @ 2010-02-08 17:04  玉米疯收  阅读(1208)  评论(5编辑  收藏  举报