全国计算机四级上机考试题及答案
已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:将第1个数与第200个数进行比较,若两数不等,则取较小者作为下列统计用的符合条件数,若两数相等,则不作为符合条件数;将第2个数与第199个数进行比较,若两数不等,则同样取较小者,若两数相等,则同样不作为符合条件数;直至第100个数与第101个数比较为止,接着计算出这些符合条件数中的最小值min、最大值max以及这些符合条件数的平均值aver。最后main()函数调用写函数writeDat()把结果输出到OUT.DAT文件中。
注意:部分源程序存在文件PROG1.C文件中。
程序中已定义:a[200]、min、max、aver
请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。*/#include#defineMAX200inta[MAX],min,max;doubleaver;voidjsVal(){/**/
inti,j,m,k=0;
min=9999;max=0;aver=0.0;
for(i=0;i
if(a[i]!=a[MAX-i-1])
{k++;m=a[i]>a[MAX-i-1]?a[MAX-i-1]:a[i];
aver+=m;
if(maxm)min=m;
}
aver/=k;/**/}voidreadDat(){
inti;
FILE*fp;
fp=fopen("in.dat","r");
for(i=0;i
fclose(fp);}voidmain(){
readDat();
jsVal();
printf("结果min=%d,max=%d,aver=%6.2lf\n",min,max,aver);
writeDat();}writeDat(){
FILE*fp;
fp=fopen("out.dat","w");
fprintf(fp,"%d\n%d\n%6.2lf\n",min,max,aver);
fclose(fp);}
?