網(wǎng)站首頁(yè)
分類導(dǎo)航
試題中心
下載中心
英語(yǔ)學(xué)習(xí)
繽紛校園
考試論壇
網(wǎng)站留言
客服中心
 2006年9月23日計(jì)算機(jī)等級(jí)考試四級(jí)上機(jī)試題匯總
【字體:
2006年9月23日計(jì)算機(jī)等級(jí)考試四級(jí)上機(jī)試題匯總
http://1glr.cn 來(lái)源:考試吧論壇 點(diǎn)擊: 更新:2006-9-25 9:10:16

  機(jī)試過(guò)后很多熱心的網(wǎng)友在考試吧論壇貼出了自己抽到的上級(jí)試題,考試吧經(jīng)過(guò)篩選提供以下比較完整的機(jī)試題目,僅供參考。更多網(wǎng)友試題請(qǐng)到論壇參與討論

機(jī)試一:
考試時(shí)間:9月23日 15:30
  抽到題目:已知數(shù)據(jù)文件IN.DAT中存有200個(gè)兩位數(shù)且相鄰的兩個(gè)數(shù)之間均不相等,并已調(diào)用函數(shù)readDat()把這些數(shù)存入數(shù)組b中,請(qǐng)考生編制一個(gè)函數(shù)jsVal(),實(shí)現(xiàn)的功能是對(duì)經(jīng)常上下波動(dòng)的數(shù)據(jù)可采用只記錄峰值的數(shù)據(jù)壓縮方法,即每次將采樣到的當(dāng)前值和前一次值比較,如數(shù)據(jù)變化方向改變(原遞增現(xiàn)遞減或原遞減現(xiàn)遞增),說(shuō)明已過(guò)峰值,這時(shí)就將當(dāng)前值記錄下來(lái),接著將結(jié)果依次存入數(shù)據(jù)b中(從0開(kāi)始存放),注意數(shù)組b中的第一個(gè)數(shù)據(jù)a[0]原樣存入b[0]單元中。最后調(diào)用輸出函數(shù)writeDat()把結(jié)果c輸出到文件OUT.DAT中。
        例如:原數(shù)據(jù):  35,69,87,73,62,54,60,70,......
                    壓縮后:  35,73,60,......
        注意:部分源程序存在文件PROG1.C文件中。
        程序中已定義:a[200]、b[200]。
        請(qǐng)勿改動(dòng)數(shù)據(jù)文件IN.DAT中的任何數(shù)據(jù)、主函數(shù)main()、讀函數(shù)readDat()和寫(xiě)函數(shù)writeDat的內(nèi)容。

補(bǔ)充函數(shù):

void jsVal()
{  int i;
   b[0]=a[0];cnt=1;
   for(i=1;i<MAX-1;i++)
      
if((a>a[i-1]&&a>a[i+1])||(a<a[i-1]&&a<a[i+1])) b[cnt++]=a[i+1];
}

機(jī)試二:
考試時(shí)間:9月23日 15:00 (供大家參考一下,祝大家上機(jī)成功!)

已知在文件IN.DAT中存有N個(gè)實(shí)數(shù)(N<200), 函數(shù)ReadDat( )是讀取這N個(gè)實(shí)數(shù)并存入數(shù)組xx中。請(qǐng)編制函數(shù)CalValue( ), 其功能要求: 1.求出這N個(gè)實(shí)數(shù)的平均值aver; 2.分別求出這N個(gè)實(shí)數(shù)中大于平均值aver的實(shí)數(shù)的整數(shù)部分值之和sumint以及該實(shí)數(shù)的小數(shù)部分值之和sumdec, 最后調(diào)用函數(shù)WriteDat()把所求的結(jié)果輸出到文件OUT2.DAT中。

    注意: 部分源程序存放在PROG1.C中。

請(qǐng)勿改動(dòng)主函數(shù)main( )、讀數(shù)據(jù)函數(shù)ReadDat()和輸出數(shù)據(jù)函數(shù)WriteDat()的內(nèi)容。
void CalValue(void)

{

  int i ;

  long val ;



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

aver += xx ;

  aver /= (double) N ;

  for(i = 0 ; i < N ; i++) {

    if(xx > aver) {

      val = (long) xx ;

      sumint += val ;

      sumdec += (xx - val) ;

    }

  }

}


機(jī)試三:
考試時(shí)間:9月23日 14:00
  抽到題目:已知在文件IN.DAT中存有10x20個(gè)實(shí)數(shù), 并已通過(guò)函數(shù)ReadDat( )數(shù)組aa[10][20]中。請(qǐng)編制函數(shù)jsVal(), 其功能要求: 1.分別剔除每行的第一個(gè)和最后一個(gè)數(shù),求出剩余18個(gè)數(shù)的平均值存入數(shù)組bb[10]中; 2.將bb[10]中的數(shù)按從達(dá)到小順序排列,結(jié)果仍存入bb[10]中。 最后調(diào)用函數(shù)WriteDat()把所求的結(jié)果輸出到文件OUT.DAT中。

    注意: 部分源程序存放在PROG1.C中。

  請(qǐng)勿改動(dòng)主函數(shù)main( )、讀數(shù)據(jù)函數(shù)ReadDat()和輸出數(shù)據(jù)函數(shù)WriteDat()的內(nèi)容。
int aa[10][20];
float  bb[10];
void jsVal()
{
    int i,j;
    float a;
    for(i=1;i<=10;i++)
    {
        bb=0;
        for(j=1;j<=19,j++)
            bb+=aa[j];
        bb/=18;
    }
    for(i=1;i<10;i++)
        for(j=1;j<=10-i;j++)
                if(bb<bb[i-1])
                {
                a=bb[j];
                bb[j]=bb[j-1];
                bb[j-1]=a;
                };
}

機(jī)試四:
  1.已知數(shù)據(jù)文件IN.DAT中存有10組每組20個(gè)四位數(shù)的數(shù)據(jù), 每個(gè)數(shù)據(jù)間用空格分隔,并已調(diào)用讀函數(shù)readDat()把這10組數(shù)據(jù)存入數(shù)組aa中(其中,aa定義為int aa[10][20]),請(qǐng)考生編制一函數(shù)jsVal(), 其功能是: 首先計(jì)算每組中的數(shù)屬于奇數(shù)的算術(shù)平均值,然后取每組小于其算術(shù)平均值的最大一個(gè)四位數(shù)依次存入數(shù)組bb?其中,數(shù)組bb定義為int bb[10],其中bb[0]為第一組中符合條件的數(shù),bb[1]為第二組中符合條件的數(shù),其它依此類推),最后調(diào)用輸出函數(shù)writeDat()把結(jié)果bb輸出到文件OUT.DAT中。
     注意: 部分源程序存在文件PROG1.C文件中。
     程序中已定義全局變量: aa[10][20]、bb[10]
     請(qǐng)勿改動(dòng)數(shù)據(jù)文件IN.DAT中的任何數(shù)據(jù)、主函數(shù)main()、讀函數(shù)readDat()和寫(xiě)函數(shù)writeDat()的內(nèi)容。
void jsVal()
{ int i,j,max,cnt;
  double aver;
  for(i=0;i<10;i++)
   { aver=0.0;  cnt=0;  max=0;
     for(j=0;j<20;j++)
        if(aa[j]%2) { cnt++; aver+=aa[j];}
     if(cnt==0) aver=0.0;
     else aver/=(double)cnt;
     for(j=0;j<20;j++)
       if(aa[j]<aver&&aa[j]>max) max=aa[j];
     bb=max;
   }
}

機(jī)試五:


  已知數(shù)據(jù)文件IN.DAT中存有10組每組20個(gè)四位數(shù)的數(shù)據(jù), 每個(gè)數(shù)據(jù)間用空格分隔,并已調(diào)用讀函數(shù)readDat()把這10組數(shù)據(jù)存入數(shù)組aa中(其中,aa定義為int aa[10][20]),請(qǐng)考生編制一函數(shù)jsVal(), 其功能是: 首先計(jì)算每組中的數(shù)中十位數(shù)位置上的數(shù)字是3、6、9的數(shù)的算術(shù)平均值,然后取每組小于其算術(shù)平均值的最大一個(gè)四位數(shù)依次存入數(shù)組bb中(其中,數(shù)組bb定義為int bb[10],其中bb[0]為第一組中符合條件的數(shù),bb[1]為第二組中符合條件的數(shù),其它依此類推),最后調(diào)用輸出函數(shù)writeDat()把結(jié)果bb輸出到文件OUT.DAT中。
     注意: 部分源程序存在文件PROG1.C文件中。
     程序中已定義全局變量: aa[10][20]、bb[10]
  請(qǐng)勿改動(dòng)數(shù)據(jù)文件IN.DAT中的任何數(shù)據(jù)、主函數(shù)main()、讀函數(shù)readDat()和寫(xiě)函數(shù)writeDat()的內(nèi)容。
void jsVal()
{ int i,j,max,cnt,sw;
  double aver;
  for(i=0;i<10;i++)
   { aver=0.0;  cnt=0;  max=0;
     for(j=0;j<20;j++)
        { sw=aa[j]%100/10;
   if(sw==3||sw==6||sw==9) { cnt++; aver+=aa[j];}
        }
     if(cnt==0) aver=0.0;
     else aver/=(double)cnt;
     for(j=0;j<20;j++)
        if(aa[j]<aver&&aa[j]>max) max=aa[j];
     bb=max;
   }
}

機(jī)試六:

  已知在文件IN.DAT中存有N個(gè)實(shí)數(shù)(N<200), 函數(shù)ReadDat( )讀取這N個(gè)實(shí)數(shù)并存入數(shù)組xx中。
    請(qǐng)編制函數(shù)CalValue( ), 其功能要求是:
 1.求出這N個(gè)實(shí)數(shù)的平均值aver;
 2.分別求出這N個(gè)實(shí)數(shù)的整數(shù)部分值的平均值averint 以及其小數(shù)部分值的平均值averdec。
    最后調(diào)用函數(shù)WriteDat( )把所求的結(jié)果輸出到文件OUT10.DAT中。
    注意: 部分源程序存放在PROG1.C中。
請(qǐng)勿改動(dòng)主函數(shù)main( )、讀數(shù)據(jù)函數(shù)ReadDat()和輸出數(shù)據(jù)函數(shù)WriteDat()的內(nèi)容。
void CalValue(void)
{
  int i ;
  for(i=0; i<N; i++) {
    aver += xx ;
    averint += (int) xx ;
  }
  averdec = aver - averint ;
  aver /= (double) N ;
  averint /= (double) N ;
  averdec /= (double) N ;
}


機(jī)試七:

  已知數(shù)據(jù)文件IN.DAT中存有10組每組20個(gè)四位數(shù)的數(shù)據(jù), 每個(gè)數(shù)據(jù)間用空格分隔,并已調(diào)用讀函數(shù)readDat()把這10組數(shù)據(jù)存入數(shù)組aa中(其中,aa定義為int aa[10][20]),請(qǐng)考生編制一函數(shù)jsVal(), 其功能是: 首先計(jì)算每組中的數(shù)的最大值和最小值的算術(shù)平均值,然后取每組小于其算術(shù)平均值的最大一個(gè)四位數(shù)依次存入數(shù)組bb中(其中,數(shù)組bb定義為int bb[10],其中bb[0]為第一組中符合條件的數(shù),bb[1]為第二組中符合條件的數(shù),其它依此類推),最后調(diào)用輸出函數(shù)writeDat()把結(jié)果bb輸出到文件OUT.DAT中。
     注意: 部分源程序存在文件PROG1.C文件中。
     程序中已定義全局變量: aa[10][20]、bb[10]
     請(qǐng)勿改動(dòng)數(shù)據(jù)文件IN.DAT中的任何數(shù)據(jù)、主函數(shù)main()、讀函數(shù)readDat()和寫(xiě)函數(shù)writeDat()的內(nèi)容。

void jsVal()
{ int i,j,max1,max2,min,cnt;
  double aver;
  for(i=0;i<10;i++)
   {  aver=0.0;  cnt=0; min=9999; max1=max2=0;
     for(j=0;j<20;j++)
      { if(aa[j]>max1) max1=aa[j];
        if(aa[j]<min) min=aa[j];
       }
     aver=(double)(max1+min)/2.0;
     for(j=0;j<20;j++)
       if(aa[j]<aver&&aa[j]>max2) max2=aa[j];
     bb=max2;
   }
}

機(jī)試九:

  已知在文件IN.DAT中存有N個(gè)實(shí)數(shù)(N<200), 函數(shù)ReadDat( )是讀取這N個(gè)實(shí)數(shù)并存入數(shù)組xx中。請(qǐng)編制函數(shù)CalValue( ), 其功能要求:1.求出這N個(gè)實(shí)數(shù)的小數(shù)部分值的平均值aver; 2.分別求出這N 個(gè)實(shí)數(shù)中其小數(shù)部分值大于平均值aver的該數(shù)的整數(shù)部分值之和sumint以及該數(shù)的小數(shù)部分之和sumdec, 最后調(diào)用函數(shù)WriteDat()把所求的結(jié)果輸出OUT5.DAT文件中。
     注意: 部分源程序存放在PROG1.C中。
 請(qǐng)勿改動(dòng)主函數(shù)main( )、讀數(shù)據(jù)函數(shù)ReadDat()和輸出數(shù)據(jù)函數(shù)WriteDat()的內(nèi)容。

void CalValue(void)
{
  int i ;
  long val ;
  float dec ;

  for(i = 0 ; i < N ; i++) {
    val = (long) xx ;
    aver += xx - val ;
  }
  aver /= (double) N ;
  for(i = 0 ; i < N ; i++) {
    val = (long) xx ;
    dec = xx - val ;
    if(dec > aver) {
      sumint += val ;
      sumdec += (xx - val) ;
}
  }
}

機(jī)試十:
  已知在文件IN.DAT中存有N個(gè)實(shí)數(shù)(N<200), 函數(shù)ReadDat( )是讀取這N個(gè)實(shí)數(shù)并存入數(shù)組xx中。請(qǐng)編制函數(shù)CalValue( ), 其功能要求: 1.求出這N個(gè)實(shí)數(shù)的平均值aver; 2.分別求出這N個(gè)實(shí)數(shù)中大于平均值aver的實(shí)數(shù)的整數(shù)部分值之和sumint以及該實(shí)數(shù)的小數(shù)部分值之和sumdec, 最后調(diào)用函數(shù)WriteDat()把所求的結(jié)果輸出到文件OUT2.DAT中。

void CalValue(void)
{ int i ;
long val ;
for(i = 0 ; i < N-1 ; i++)
aver += xx ;
aver /= (double) N ;
for(i = 0 ; i < N-1 ; i++)
{ if(xx > aver)
{ val = (long) xx ;  
sumint += val ;
sumdec += (xx - val) ;   }  

}}


機(jī)時(shí)十一:
  抽到題目:已知數(shù)據(jù)文件IN.DAT中存有200個(gè)兩位數(shù)且相鄰的兩個(gè)數(shù)之間均不相等,并已調(diào)用函數(shù)readDat()把這些數(shù)存入數(shù)組b中,請(qǐng)考生編制一個(gè)函數(shù)jsVal(),實(shí)現(xiàn)的功能是對(duì)經(jīng)常上下波動(dòng)的數(shù)據(jù)可采用只記錄峰值的數(shù)據(jù)壓縮方法,即每次將采樣到的當(dāng)前值和前一次值比較,如數(shù)據(jù)變化方向改變(原遞增現(xiàn)遞減或原遞減現(xiàn)遞增),說(shuō)明已過(guò)峰值,這時(shí)就將當(dāng)前值記錄下來(lái),接著將結(jié)果依次存入數(shù)據(jù)b中(從0開(kāi)始存放),注意數(shù)組b中的第一個(gè)數(shù)據(jù)a[0]原樣存入b[0]單元中。最后調(diào)用輸出函數(shù)writeDat()把結(jié)果c輸出到文件OUT.DAT中。例如:原數(shù)據(jù):  35,69,87,73,62,54,60,70, 壓縮后:  35,73,60, 注意:部分源程序存在文件PROG1.C文件中。 程序中已定義:a[200]、b[200]。請(qǐng)勿改動(dòng)數(shù)據(jù)文件IN.DAT中的任何數(shù)據(jù)、主函數(shù)main()、讀函數(shù)readDat()和寫(xiě)函數(shù)writeDat的內(nèi)容。

{  int i;

b[0]=a[0];
cnt=1;

for(i=1;i<MAX-1;i++)

if((a>a[i-1]&&a>a[i+1])||(a<a[i-1]&&a<a[i+1]))

b[cnt++]=a;}

機(jī)時(shí)十二:
本人是昨天晚上考的,前面也有人抽到,但我覺(jué)得答案有問(wèn)題現(xiàn)將我的答案歸納如下,盡請(qǐng)指教!
抽到題目:已知在文件IN.DAT中存有10x20個(gè)實(shí)數(shù), 并已通過(guò)函數(shù)ReadDat( )數(shù)組aa[10][20]中。請(qǐng)編制函數(shù)jsVal(), 其功能要求: 1.分別剔除每行的第一個(gè)和最后一個(gè)數(shù),求出剩余18個(gè)數(shù)的平均值存入數(shù)組bb[10]中; 2.將bb[10]中的數(shù)按從達(dá)到小順序排列,結(jié)果仍存入bb[10]中。 最后調(diào)用函數(shù)WriteDat()把所求的結(jié)果輸出到文件OUT.DAT中。
int aa[10][20];
float  bb[10];
void   jsVal()
{int i,j;
float a;
for(i=0;i<10;i++)
{ bb=0; 
for(j=1;j<19,j++)
bb+=aa[j];
bb/=18;  }
for(i=0;i<10;i++) 
for(j=i;j<10;j++) 

if(bb<bb[j])
{ a=bb;   
bb=bb[j]
bb[j]=a;  

}}

文章錄入:luoqwh    責(zé)任編輯:luoqwh  
 版權(quán)聲明
   如果本網(wǎng)站所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本網(wǎng)內(nèi)容,請(qǐng)注明出處。
 發(fā)表評(píng)論
關(guān)于本站 網(wǎng)站聲明 廣告服務(wù)  聯(lián)系方式  付款方式  站內(nèi)導(dǎo)航  客服中心  誠(chéng)聘英才  友情鏈接   
Copyright © 2004-2007 考試吧 (Exam8.com) All Rights Reserved 
中國(guó)科學(xué)院研究生院中關(guān)村園區(qū)(北京市海淀區(qū))