高手帮我改个C语言程序吧~

来源:百度知道 编辑:UC知道 时间:2024/05/20 13:23:56
在文件in.dat中有200个正整数,且每个数均在1000至9999之间。函数ReadDat()读取这200个数存放到数组aa中。请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行降序排列,然后取出满足此条件的前10个数依次存入数组b中,如果后三位的数值相等,则按原先的数值进行升序排列。最后调用函数WriteDat()把结果bb输出到文件out.dat中。

例:处理前 9012 5099 6012 7025 8088

处理后 5099 8088 7025 6012 9012

注意:部分源程序已给出。

请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。

#include<stdio.h>

#include<string.h>

#include<conio.h>

int aa[200],bb[10];

void jsSort()

{

int i,j,data;

for(i=0;i<199;i++)

for(j=i+1;j<200;j++)

if(aa[i]%1000<aa[j]%1000||aa[i]%1000==aa[j]%1000&&aa[i]>aa[j])

{data=aa[i];aa[i]=aa[j];aa[j]=data;}

for(i=0;i<10;i++)

bb[i]=aa[i];

}

void main()

{

readDat();

jsSort();

writeDat();

system("pause");

无错。
*************************************

writeDat()
改为
void writeDat(void)

readDat()
改为
void readDat(void)

这两个函数应该在主函数之前进行声明,即在主函数之前加上以下两句:

void writeDat(void);
void readDat(void);

conio.h改为stdlib.h

clrscr();
改为
system("pause");