搜狗
alimama
ali
阿里
阿里妈妈
sogou
第一卷 第六章

?10题  在文件in.dat中有200组数据,每组有3个数,每个数均是三位数。函数ReadDat()读取这200组数据存放到结构数组aa中,请编制函数jsSort(),其函数的功能是:要求在200组数据中找出条件为每组中的第一个数大于第二个数加第三个数的之和,其中满足条件的个数作为函数jsSort()  的返回值,同时把满足条件的数据存入结构数组bb中,再对bb中的数据按照每组数据的第一个数加第三个之和的大小进行升序排列(第一个数加第三个数的和均不相等),排序后的结果仍重新存入结构数组bb中,最后调用函数WriteDat()把结果bb输出到文件out.dat中。

int  jsSort()

{

int  i,j,k=0;

DATA  swap;            

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

    if(aa[i].x1>(aa[i].x2+aa[i].x3))

        bb[k++]=aa[i];                                      

  for(i=0;ifor(j=i+1;jif((bb[i].x1+bb[i].x3)>(bb[j].x1+bb[j].x3))

{

swap=bb[i];

bb[i]=bb[j];

bb[j]=swap;                                                                    

}

return  k;

}

18题  下列程序的功能是:将一正整数序列{K1,K2,...,K9}重新排列成一个新的序列。新序列中,比K1小的数都在K1的前面(左面),比K1大的数都在K1的后面(右面)。要求编写函数jsValue()实现此功能,最后调用writeDat()函数所新序列输出到文件out.dat中。

jsvalue(int  a[10][9])

{  int  i,j,k,n,temp;

    int  b[9]=0;

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

      {    temp=a[i][0];

                k=8;    n=0;

            for(j=8,j>=0;j--)            

              {    if(temp                  if(temp>a[i][j])      b[n++]=a[i][j];

                  if(temp==a[i][j])      b[n]=temp;          /*也可以b[k]=a[i][j];*/

                  }

    for(j=0;j<9;j++)

              {  a[i][j]=b[j];

                    b[j]=0;}

}

}


[猫扑广告]