全國計算機四級等級考試上機題
、 已知數(shù)據(jù)文件IN.DAT中存有200個四位數(shù), 并已調(diào)用讀函數(shù)readDat()把這些數(shù)存入數(shù)組a中,請考生編制一函數(shù)jsVal(),其功能是:將第1個數(shù)與第200個數(shù)進(jìn)行比較, 若兩數(shù)不等, 則取較大者作為下列統(tǒng)計用的符合條件數(shù),若兩數(shù)相等, 則不作為符合條件數(shù); 將第2個數(shù)與第 199個數(shù)進(jìn)行比較,若兩數(shù)不等, 則同樣取較大者, 若兩數(shù)相等, 則同樣不作為符合條件數(shù); 直至第100個數(shù)與第101個數(shù)比較為止, 接著計算出這些符合條件數(shù)中的最小值min、最大值max以及這些符合條件數(shù)的平均值aver。最后main()函數(shù)調(diào)用寫函數(shù)writeDat()把結(jié)果輸出到 OUT.DAT文件中。注意: 部分源程序存在文件PROG1.C文件中。
程序中已定義: a[200]、min、max、aver
請勿改動數(shù)據(jù)文件IN.DAT中的'任何數(shù)據(jù)、主函數(shù)main()、
讀函數(shù)readDat()和寫函數(shù)writeDat()的內(nèi)容。
*/#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("結(jié)果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) ;} http://fnhaliao.com/
【全國計算機四級等級考試上機題】相關(guān)文章:
全國計算機等級考試四級上機編程修養(yǎng)(下)10-09
全國計算機等級考試四級上機編程題型二10-09
全國計算機等級考試四級上機編程題型一10-09
全國計算機等級考試四級上機編程修養(yǎng)(中)10-09