首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 计算机考试 > 等级考试 > 四级考试 >

全国计算机四级等级考试上机题

2010-11-02 
读书人与您同行,携手打造非凡未来
已知数据文件IN.DAT中存有200个四位数并已调用读函数readDat()把这些数存入数组a,请考生编制一函数jsVal(),其功能是:将第1个数与第200个数进行比较若两数不等则取较大者作为下列统计用的符合条件数,若两数相等则不作为符合条件数将第2个数与第 199个数进行比较,若两数不等则同样取较大者若两数相等则同样不作为符合条件数直至第100个数与第101个数比较为止接着计算出这些符合条件数中的最小值min、最大值max以及这些符合条件数的平均值aver。最后main()函数调用写函数writeDat()把结果输出到 OUT.DAT文件中。
   注意部分源程序存在文件PROG1.C文件中。

   程序中已定义: a[200]minmax
aver
   请勿改动数据文件IN.DAT中的任何数据、主函数main()

  读函数readDat()和写函数writeDat()的内容。

  

  
*/#include 
  
#define MAX 200int a[MAX], min, max;double aver ; 
  
void jsVal()
  
{
  
 int b[MAX/2], i, n=0;
  
 for(i = 0; i < MAX/2; i++)
  
 if(a[i]!=a[MAX-i-1])
  
 b[n++] = a[i] > a[MAX-i-1] ? a[i] : a[MAX-i-1];
  
 max=min=b[0]; aver=b[0];
  
 for(i = 1; i < n; i++)
  
 { aver+=b[i];
  
 if(b[i] > max) max=b[i]; else if(b[i] < min) min=b[i];
  
 }
  
 aver=aver/n;/**/}void readDat(){
  
 int i ;
  
 FILE *fp ;
  
 fp = fopen("in.dat", "r") ;
  
 for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ;
  
 fclose(fp) ;}void main(){
  
 readDat() ;
  
 jsVal() ;
   printf("结果
min=%d,max=%d,aver=%6.2lfn", min, max, aver) ;
  
 writeDat() ;}writeDat(){
  
 FILE *fp ;
  
 fp = fopen("out.dat", "w") ;
  
 fprintf(fp, "%dn%dn%6.2lfn", min, max, aver) ;
   fclose(fp) ;}
热点排行