網(wǎng)站首頁
分類導(dǎo)航
試題中心
下載中心
英語學(xué)習(xí)
繽紛校園
考試論壇
網(wǎng)站留言
客服中心
 2005年4月2日上機(jī)試題(網(wǎng)友回顧)
【字體:
2005年4月2日上機(jī)試題(網(wǎng)友回顧)
http://1glr.cn 來源:考試吧(Exam8.com) 點擊: 更新:2005-4-2 19:08:00

    編者:一位網(wǎng)友在論壇中發(fā)帖,稱是自己剛剛考過得上機(jī)題。

    已知數(shù)據(jù)文件IN.DAT中存有200個四位數(shù),并已調(diào)用讀函數(shù)readDat()把這些數(shù)存入數(shù)組a中,請考生編制一函數(shù)jsVal(),其功能是:把千位數(shù)字和十位數(shù)字重新組成一個新的十位數(shù)ab(新十位數(shù)的十位數(shù)字是原四位數(shù)的千位數(shù)字,新十位數(shù)的個位數(shù)字是原四位數(shù)的十位數(shù)字),以及把個位數(shù)字和百位數(shù)字組成另一個新的十位數(shù)cd(新十位數(shù)的十位數(shù)字是原四位數(shù)的個位數(shù)字,新十位數(shù)的個位數(shù)字是原四位數(shù)的百位數(shù)字),如果新組成的兩個十位數(shù)ab-cd>=10且ab-cd<=20且兩個數(shù)均是偶數(shù),同時兩個新數(shù)的十位數(shù)字均不為零,則將滿足此條件的四位數(shù)按從大到小的順序存入數(shù)組b中,并要計算滿足上述條件的四位數(shù)的個數(shù)cnt。

    最后main()函數(shù)調(diào)用寫函數(shù)writeDat( )把結(jié)果cnt以及數(shù)組b中符合條件的四位數(shù)輸出到OUT.DAT文件中。

    注意:部分源程序存在文件prog1.c中。

    程序中已定義數(shù)組:a[200],b[200],已定義變量:cnt

    請勿改動數(shù)據(jù)文件IN.DAT中的任何數(shù)據(jù)、主函數(shù)main()、讀函數(shù)readDat()和寫函數(shù)writeDat()的內(nèi)容。

#include <stdio.h>

#define MAX  200

int a[MAX], b[MAX], cnt = 0 ;

void jsVal()

{ int i,j,qw,bw,sw,gw,ab,cd;

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

  { qw=a[i]/1000;   bw=a[i]/100%10;

    sw=a[i]%100/10; gw=a[i]%10;

    ab=qw*10+sw;    cd=gw*10+bw;

    if(ab-cd>=10&&ab-cd<=20&&ab%2==0&&cd%2==0&&qw!=0&&gw!=0)

       b[cnt++]=a[i];

  }

for(i=0;i<cnt-1;i++)

  for(j=i+1;j<cnt;j++)

   if(b[i]<b[j]) {qw=b[i];b[i]=b[j];b[j]=qw;}

}

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()

{

  int i ;

  readDat() ;

  jsVal() ;

  printf("滿足條件的數(shù)=%d\n", cnt) ;

  for(i = 0 ; i < cnt ; i++) printf("%d ", b[i]) ;

  printf("\n") ;

  writeDat() ;

}

writeDat()

{

  FILE *fp ;

  int i ;

  fp = fopen("out.dat", "w") ;

  fprintf(fp, "%d\n", cnt) ;

  for(i = 0 ; i < cnt ; i++) fprintf(fp, "%d\n", b[i]) ;

  fclose(fp) ;

}

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