首頁考試吧論壇Exam8視線考試商城網(wǎng)絡(luò)課程模擬考試考友錄實(shí)用文檔求職招聘論文下載
2013中考
法律碩士
2013高考
MBA考試
2013考研
MPA考試
在職研
中科院
考研培訓(xùn) 自學(xué)考試 成人高考
四 六 級
GRE考試
攻碩英語
零起點(diǎn)日語
職稱英語
口譯筆譯
申碩英語
零起點(diǎn)韓語
商務(wù)英語
日語等級
GMAT考試
公共英語
職稱日語
新概念英語
專四專八
博思考試
零起點(diǎn)英語
托?荚
托業(yè)考試
零起點(diǎn)法語
雅思考試
成人英語三級
零起點(diǎn)德語
等級考試
華為認(rèn)證
水平考試
Java認(rèn)證
職稱計(jì)算機(jī) 微軟認(rèn)證 思科認(rèn)證 Oracle認(rèn)證 Linux認(rèn)證
公 務(wù) 員
導(dǎo)游考試
物 流 師
出版資格
單 證 員
報(bào) 關(guān) 員
外 銷 員
價(jià)格鑒證
網(wǎng)絡(luò)編輯
駕 駛 員
報(bào)檢員
法律顧問
管理咨詢
企業(yè)培訓(xùn)
社會(huì)工作者
銀行從業(yè)
教師資格
營養(yǎng)師
保險(xiǎn)從業(yè)
普 通 話
證券從業(yè)
跟 單 員
秘書資格
電子商務(wù)
期貨考試
國際商務(wù)
心理咨詢
營 銷 師
司法考試
國際貨運(yùn)代理人
人力資源管理師
廣告師職業(yè)水平
衛(wèi)生資格 執(zhí)業(yè)醫(yī)師 執(zhí)業(yè)藥師 執(zhí)業(yè)護(hù)士
會(huì)計(jì)從業(yè)資格
基金從業(yè)資格
統(tǒng)計(jì)從業(yè)資格
經(jīng)濟(jì)師
精算師
統(tǒng)計(jì)師
會(huì)計(jì)職稱
法律顧問
ACCA考試
注冊會(huì)計(jì)師
資產(chǎn)評估師
審計(jì)師考試
高級會(huì)計(jì)師
注冊稅務(wù)師
國際內(nèi)審師
理財(cái)規(guī)劃師
美國注冊會(huì)計(jì)師
一級建造師
安全工程師
設(shè)備監(jiān)理師
公路監(jiān)理師
公路造價(jià)師
二級建造師
招標(biāo)師考試
物業(yè)管理師
電氣工程師
建筑師考試
造價(jià)工程師
注冊測繪師
質(zhì)量工程師
巖土工程師
造價(jià)員考試
注冊計(jì)量師
環(huán)保工程師
化工工程師
咨詢工程師
結(jié)構(gòu)工程師
城市規(guī)劃師
材料員考試
監(jiān)理工程師
房地產(chǎn)估價(jià)
土地估價(jià)師
安全評價(jià)師
房地產(chǎn)經(jīng)紀(jì)人
投資項(xiàng)目管理師
環(huán)境影響評價(jià)師
土地登記代理人
繽紛校園 實(shí)用文檔 英語學(xué)習(xí) 作文大全 求職招聘 論文下載 訪談|游戲
計(jì)算機(jī)等級考試
您現(xiàn)在的位置: 考試吧 > 計(jì)算機(jī)等級考試 > 計(jì)算機(jī)二級 > C語言 > 模擬試題 > 正文

2013年3月計(jì)算機(jī)等考二級C語言模擬試題及答案10

 >>>考試吧考后首發(fā)2013年3月計(jì)算機(jī)等考試題答案  


  第10套:

  給定程序中,函數(shù)fun的功能是:判定形參a所指的N×N(規(guī)定N為奇數(shù))的矩陣是否是"幻方",若是,函數(shù)返回值為1; 不是,函數(shù)返回值為0。"幻方"的判定條件是:矩陣每行、每列、主對角線及反對角線上元素之和都相等。

  例如,以下3×3的矩陣就是一個(gè)"幻方":

  4 9 2

  3 5 7

  8 1 6

  請?jiān)诔绦虻南聞澗處填入正確的內(nèi)容并把下劃線刪除, 使程序得出正確的結(jié)果。

  注意:源程序存放在考生文件夾下的BLANK1.C中。

  不得增行或刪行,也不得更改程序的結(jié)構(gòu)!

  給定源程序:

  #include

  #define N 3

  int fun(int (*a)[N])

  { int i,j,m1,m2,row,colum;

  m1=m2=0;

  for(i=0; i

  { j=N-i-1; m1+=a[i][i]; m2+=a[i][j]; }

  if(m1!=m2) return 0;

  for(i=0; i

  row=colum= __1__;

  for(j=0; j

  { row+=a[i][j]; colum+=a[j][i]; }

  if( (row!=colum) __2__ (row!=m1) ) return 0;

  }

  return __3__;

  }

  main()

  { int x[N][N],i,j;

  printf("Enter number for array:\n");

  for(i=0; i

  printf("Array:\n");

  for(i=0; i

  { for(j=0; j

  printf("\n");

  }

  if(fun(x)) printf("The Array is a magic square.\n");

  else printf("The Array isn't a magic square.\n");

  }

  解題思路:

  第一處:行列變量row和colum的值初始化為0。

  第二處:兩個(gè)條件只要有一個(gè)不滿足就返回0,所以應(yīng)填:||。

  第三處:如果矩陣是“幻方”,則返回1。

  ***************************************************

  給定程序MODI1.C中fun函數(shù)的功能是: 根據(jù)整型形參m,計(jì)算如下公式的值。

  1 1 1

  t = 1 - ----- - ----- - …… - -----

  2 3 m

  例如,若主函數(shù)中輸入5,則應(yīng)輸出 -0.283333。

  請改正函數(shù)fun中的錯(cuò)誤或在橫線處填上適當(dāng)?shù)膬?nèi)容并把橫線刪除, 使它能計(jì)算出正確的結(jié)果。

  注意:不要改動(dòng) main 函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!

  給定源程序:

  #include

  double fun( int m )

  {

  double t = 1.0;

  int i;

  for( i = 2; i <= m; i++ )

  t = 1.0-1 /i;

  _______;

  }

  main()

  {

  int m ;

  printf( "\nPlease enter 1 integer numbers:\n" );

  scanf( "%d", &m);

  printf( "\n\nThe result is %lf\n", fun( m ) );

  }

  解題思路:

  第一處:在除法運(yùn)算中,如果除數(shù)和被除數(shù)都是整數(shù),所么所除結(jié)果也是整數(shù),因此應(yīng)改為t-=1./i。

  第二處:應(yīng)是返回公式的值,函數(shù)中公式的值是存放在臨時(shí)變量t中,所以應(yīng)填return t;。

  ***************************************************

  請編寫一個(gè)函數(shù),函數(shù)的功能是刪除字符串中的所有空格。

  例如, 主函數(shù)中輸入"asd af aa z67", 則輸出為 "asdafaaz67"。

  注意:部分源程序在文件PROG1.C中。

  請勿改動(dòng)主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句。

  給定源程序:

  #include

  #include

  int fun(char *str)

  {

  }

  main()

  {

  char str[81];

  int n;

  printf("Input a string:") ;

  gets(str);

  puts(str);

  fun(str);

  printf("*** str: %s\n",str);

  NONO();

  }

  解題思路:

  本題是考察考生怎樣利用字符串指針來刪除字符串的空格字符。在函數(shù)開始處把指針p先指

  向字符串str以及位置變量i置0,然后采用while循環(huán)和字符串指針p來處理的,每循環(huán)一次來判斷指針p所指的字符是否為空格,如果不是空格,則把該字符寫到str字符串中,位置由i來控制,如果是空格,則不處理,繼續(xù)取下一字符,直至字符串結(jié)束為止,最后再把字符串結(jié)束符寫到

  位置為i的str上,再通過形參str返回。

  參考答案:

  int fun(char *str)

  {

  char *p = str ;

  int i = 0 ;

  while(*p) {

  if(*p != ' ') str[i++] = *p ;

  p++ ;

  }

  str[i] = 0 ;

  }

1 2  下一頁
文章搜索
版權(quán)聲明:如果計(jì)算機(jī)等級考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級考試網(wǎng)內(nèi)容,請注明出處。