芦名尤莉亚和黑人:C语言编程

来源:百度文库 编辑:中科新闻网 时间:2024/05/06 00:15:25
有200个正整数,且每个正整数均在1000至9999之间。函数readDat()的功能是读取这200个数并存放到数组aa中。请编制函数jsSort(),该函数的功能是:要求按照每个数的后3位的大小进行升序排列,将排序后的前10个数存入数组bb中,如果数组bb中出现后3位相等的数,则对这些数按原始4位数据进行降序排列。

1
void jsSort()
{int i,j,t,a[200];
for(i=0;i<200;i++)
a[i]=aa[i]%1000;
for(i=0;i<199;i++)
for(j=i+1;j<200;j++)
if(a[i]>a[j])
{t=aa[i];aa[i]=aa[j];aa[j]=t;}
else if(a[i]==a[j])
{
if(aa[i]<aa[j])
{t=aa[i];aa[i]=aa[j];aa[j]=t;}
}

for(i=0;i<10;i++)
bb[i]=aa[i];

}

2
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)
{
data=aa[i];
aa[i]=aa[j];
aa[j]=data;
}
else if(aa[i]%1000==aa[j]%1000)
if(aa[i]<aa[j])
{
data=aa[i];
aa[i]=aa[j];
aa[j]=data;
}
}
for(i=0;i<10;i++)
bb[i]=aa[i];
}
为什么两个函数
实现数字不相同呢?