[主观题]

已知数据文件in. dat中存有10组每组20个四位数的数据,每个数据间用空格分隔,调用读函数ReadDat()把这10组数据存人数组aa中(其中,aa定义为int aa [10][20])。请编制一函数jsVal(),其功能是:首先将每组20个数按从小到大的顺序进行排序,排序后的结果仍存人数组aa中,接着去掉每组中最中间的两个数以及最小的两个数,然后计算其余16个数的算术平均值,并将计算结果按组的顺序依次存人数组bb中(其中,数组bb定义为float bb[10]),最后调用写函数WriteDat()把结果bb输出到文件out.dat中。

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

程序中已定义全局变量:aa[10][20]、bb[10]。

请勿改动数据文件in. dat中的任何数据、主函数main()、读函数ReadDat()和写函数WriteDat()的内容。

.试题程序

include

int aa[10][20];

float bb[10];

void jsVal()

{

}

void ReadDat()

{

int i,j;

F.ILE * fp;

fp=fopen("in, dat","r");

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

for(j=0 d<20; j++) fseanf (fp,"%d", &aa[i][j])

fclose(fp);

}

void main()

int i;

ReadDat(); /*读数据*/

jsVal(); / *按要求计算* /

for(i=0;i<10;i++) /*从屏幕输出结果*/

prinff("%6.21f/n", bb[i])

WriteDat(); / *输出结果到文件* /

}

WriteDat()

{

F.ILE * fp;

int i;

fp=fopen("out, dat","w");

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

fprintf(fp,"%6.21f/n",bb[i]);

fclose(fp);

}

参考答案与解析:

相关试题

已知数据文件IN.DAT中存有300个四位数,并已调用读函数READDAT()

[试题]已知数据文件IN.DAT中存有300个四位数,并已调用读函数READDAT() 把这些数存入数组a中。请编制函数Svalue(),其功能是:求出这些四位数中素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后将数组b中的四位数按从小到大的顺序排序,最后调用写函数writeDat(),把结果输出到文件OUT.DAT中。例如:5591是素数,则满足条件,存入数组b中,且个数cnt=cnt+1;9812是非素数,则不满足条件,忽略。部分源程序已给出。程序中已定义数组a[300]、b[300

  • 查看答案
  • 已知数据文件IN13.DAT中存有300个四位数,并已调用读函数readDat(

    [主观题]已知数据文件IN13.DAT中存有300个四位数,并已调用读函数readDat()把这些数存入数组a中,请编制一个函数jsValue(),其功能是:求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数cnt,再把所有满足条件的四位数依次存入数组b中,然后对数组b中的四位数按从大到小的顺序进行排序,最后调用写函数writeDat()把数组b中的数输出到OUT13.DAT文件。例如:7153,7+1=5+3,则该数满足条件存入数组b中,且个数cnt=cnt+1。8129,8+1≠2+9

  • 查看答案
  • 已知数据文件IN.dat中存有200个四位数,并已调用读函数readDat()把

    [主观题]已知数据文件IN.dat中存有200个四位数,并已调用读函数readDat()把这些数存入数组 a中,请编写函数spellNum(),其功能是:把个位数字和千位数字重新组成一个新的二位数(新二位数的十位数字是原四位数的个位数字,新二位数的个位数字是原四位数的千位数字),以及把百位数字和十位数字组成另一个新的二位数(新二位数的十位数字是原四位数的百位数字,新二位数的个位数字是原四位数的十位数字),如果新组成的两个二位数均是偶数并且两个二位数中至少有一个数能被9整除,同时两个新数的十位数字均不为0,

  • 查看答案
  • 已知数据文件in.dat中存有300个四位数,并已调用读函数readDat把这些

    [主观题]已知数据文件in.dat中存有300个四位数,并已调用读函数readDat把这些数存入数组a中,请编制一函数isValue,其功能是:求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序。最后main函数调用写函数writeDat把数组b中的数输出到out.dat文件中。 例如:5591是素数,则该数满足条件存入数组b中,且个数cnt=cnt+1。 9812是非素数,则该数不满足条件忽略。 注意:部分源程序存在test.C

  • 查看答案
  • 已知数据文件in.dat中存有200个四位数,并已调用读函数readDat把这些

    [主观题]已知数据文件in.dat中存有200个四位数,并已调用读函数readDat把这些数存入数组a中,请考生编制一函数jsVal,其功能是:若一个四位数的千位数位置上的值小于等于百位数位置上的值,百位数位置上的值小于等于十位数位置上的值,以及十位数位置上的值小于等于个位数位置上的值,并且原四位数是偶数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到文件0ut.dat中。

  • 查看答案
  • 已知数据文件in.dat中存有300个四位数,并已调用读函数readDat把这些

    [主观题]已知数据文件in.dat中存有300个四位数,并已调用读函数readDat把这些数存入数组a中,请编制一函数jsValue,其功能是:求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序。最后maini函数调用写函数writeDat把数组b中的数输出到0ut.dat文件中。 例如:5591是素数,则该数满足条件存入数组b中,且个数cnt=cnt+1。 9812是非素数,则该数不满足条件忽略。 注意:部分源程序存在test.

  • 查看答案
  • 已知数据文件in.dat中存有300个四位数,并已调用读函数readDat把这些

    [主观题]已知数据文件in.dat中存有300个四位数,并已调用读函数readDat把这些数存入数组a中,请编制一数jsValue,其功能是:求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于零的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从大到小的顺序进行排序。最后main函数调用写函数writeDat把数组 b中的数输出到文件0ut.dat。

  • 查看答案
  • 已知数据文件in.dat中存有300个四位数,并已调用读函数rcadDat把这些

    [主观题]已知数据文件in.dat中存有300个四位数,并已调用读函数rcadDat把这些数存入数组a中,请编制一函数jsvalue,其功能是:求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从大到小的顺序进行排序。最后main函数调用写函数writeDat把数组b中的数输出到文件out.dat中。

  • 查看答案
  • 已知数据文件in.dat中存有300个四位数,并已调用读函数readDat0把这

    [主观题]已知数据文件in.dat中存有300个四位数,并已调用读函数readDat0把这些数存入数组a中,请编制一函数jsValue,其功能是:求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于零的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及所有不满足此条件的四位数平均值pjz2。最后main函数调用写函数writeDat把结果cnt,pjz1, pjz2输出到out.dat文件。 例如:1239,9-1-2-3>0,则该数满足条件,参加计算平均值pjz1,且个数cnt

  • 查看答案
  • 已知数据文件in.dat中存有200个四位数,并已调用读函数readDat0把这

    [主观题]已知数据文件in.dat中存有200个四位数,并已调用读函数readDat0把这些数存入数组a中,请考生编制一函数jsVal,其功能是:依次从数组a中取出一个四位数,如果该四位数大于该四位数以后的连续五个数且该数是奇数(该四位数以后不满五个数,则不统计),则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数 writeDat把结果cnt以及数组b中符合条件的四位数输出到0ut.dat文件中。 注意:部分源程序存在test.C文件中。 程序中已定义数组:a[20

  • 查看答案