當前位置:才華齋>計算機>計算機四級>

全國計算機四級上機考試題及答案

計算機四級 閱讀(5.97K)

已知資料檔案中存有200個四位數, 並已呼叫讀函式readDat()把這些數存入陣列a中,請考生編制一函式jsVal(),其功能是:將第1個數與第200個數進行比較, 若兩數不等, 則取較小者作為下列統計用的符合條件數,若兩數相等, 則不作為符合條件數; 將第2個數與第199個數進行比較,若兩數不等, 則同樣取較小者, 若兩數相等, 則同樣不作為符合條件數; 直至第100個數與第101個數比較為止, 接著計算出這些符合條件數中的'最小值min、最大值max以及這些符合條件數的平均值aver。最後main()函式呼叫寫函式writeDat()把結果輸出到檔案中。

全國計算機四級上機考試題及答案

注意: 部分源程式存在檔案PROG1.C檔案中。

  程式中已定義: a[200]、min、max、aver

請勿改動資料檔案中的任何資料、主函式main()、讀函式readDat()和寫函式writeDat()的內容。*/#include #define MAX 200int a[MAX], min, max;double aver ;void jsVal(){/**/

int i,j,m,k=0;

min=9999; max=0; aver=0.0;

for(i=0; i < MAX/2; 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(max < m)max=m; else if(min>m) min=m;

}

aver/=k;/**/}void readDat(){

int i ;

FILE *fp ;

fp = fopen("", "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("", "w") ;

fprintf(fp, "%dn%dn%6.2lfn", min, max, aver) ;

fclose(fp) ;}