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

2013年軟考程序員考前模擬試題及答案解析(3)

  40.若i、j已定義為int類型,則以下程序段中的內(nèi)循環(huán)體的執(zhí)行次數(shù)是( )

  for( i=5; i; i--)

  for(j= 0; j<4;j++){……}

  A.20

  B. 24

  C. 25

  D. 30

  【解析】問題所給的程序段的外循環(huán)是一個階循環(huán)語句,它的初始化部分置變量i的初值為5,循環(huán)條件簡寫成i,即i!=0,每次循環(huán)后變量i的值減1。所以外循環(huán)共控制5次循環(huán)。內(nèi)循環(huán)也是一個for循環(huán)語句,它的初始化部分置變量j的初值為0,循環(huán)條件是j<4,每次循環(huán)后變量j的值增1。所以內(nèi)循環(huán)共控制4次循環(huán)。這樣,如內(nèi)循環(huán)的體內(nèi)未曾對變量i和j有修改,在內(nèi)、外循環(huán)一起控制下,內(nèi)循環(huán)的體共被重復(fù)執(zhí)行20次。正確解答是A。

  【參考答案】A

  41.假定a和b為int型變量,則執(zhí)行以下語句后b的值為( )

  a=1; b=10;

  do b-=a; a++;

  }while<(b--<0);

  A.9

  B.-2

  C.-1

  D.8

  【解析】在這個程序段中,循環(huán)開始前變量a的值為1,b的值為10,每次循環(huán)從變量b減去a,并讓a增1,并在循環(huán)條件判定時,又讓b減去1。第一次循環(huán)后,變量b的值變成9,變量a的值變?yōu)?,循環(huán)判斷時,因b的值大于0,循環(huán)條件不成立,結(jié)束循環(huán)。但在循環(huán)判斷時,讓b減去了1,所以循環(huán)結(jié)束時,變量b的值為8。正確的解答是D。

  【參考答案】D

  42.設(shè)x和y為int型變量,則執(zhí)行下面的循環(huán)后,y的值為( )

  for(y=l, x=l; y<=50; y++){

  if(x>=10) break;

  if(x%2==1){ x+=5; continue;}

  X -= 3;

  }

  A.2

  B.4

  C.6

  D.8

  【解析】 for循環(huán)語句的初始化部分置變量x和y的初值為1,循環(huán)條件是(y<=50),每次循環(huán)后變量y的值增1,控制循環(huán)最多執(zhí)行50次。循環(huán)體有三個語句:首先在發(fā)現(xiàn)變量X的值大于等于10時,結(jié)束循環(huán);接著是當變量X除2的余數(shù)為1(即變量X是奇數(shù))時,讓變量X值增5,讓X變成偶數(shù),并直接進入下一輪循環(huán);如變量X是偶數(shù),則從變量X減去3,讓變量X變成奇數(shù)。由上述分析知,每兩次循環(huán)使變量X的值增加2.第一次循環(huán)后,變量X的值變成6。第二次循環(huán)后,變量X的值變成3。第三次循環(huán)后,變量X的位變成8。第四次循環(huán)后,變量X的值變成5。第五次循環(huán)后,變量X的值變成 10。第六次循環(huán)時,因變量X的位大于等于 10,直接跳出循環(huán),這次循環(huán)是非正常結(jié)束,對變量y的修正只執(zhí)行了5次。所以循環(huán)結(jié)束后,變量y的值增至6。正確的解答是C。

  【參考答案】C

  43.在C語言中,下列說法中正確的是( )

  A.不能使用“do語句while(條件)”的循環(huán)

  B.“do語句While(條件)”的循環(huán)中必須使用“break”語句退出循環(huán)

  C.“do語句while(條件)”的循環(huán)中,當條件非0時將結(jié)束循環(huán)

  D.“do語句while(條件)”的循環(huán)中,當條件為0時將結(jié)束循環(huán)

  【解析】 do-while語句的一般形式是:

  do語句

  while(表達式);

  其語義是重復(fù)執(zhí)行其成分語句,直至表示條件的表達式值為0時結(jié)束。do-while語句是正常使用的一種循環(huán)結(jié)構(gòu)之一。do-while語句的循環(huán)結(jié)束條件由while后的表達式值為0所控制,并不一定要有break語句跳出循環(huán)來結(jié)束循環(huán)。do-while語句在條件值非0時,將繼續(xù)循環(huán),而不是結(jié)束循環(huán)。條件值為0時,才結(jié)束循環(huán)。所以正確的選擇是D。

  【參考答案】D

  44.若有以下程序段,W和k都是整型變量,則不能與該程序段等價的循環(huán)語句是( )

  W= k;

  LB: if(w==0) gotO LE;

  w - -;

  printf("*");

  goto LB;

  LE:

  A. for(w=k;w!=0;W--)printf("*");

  B. w= k;

  While(W--!=0) Prinif(”* ”);

  C. w= k;

  do{w--; prinif(“*”);

  } while( W!= 0);

  D. for(w=k;W;--W) printf("*");

  【解析】問題所給出的程序段用goto語句構(gòu)造一個循環(huán)控制結(jié)構(gòu),該循環(huán)結(jié)構(gòu)的初值是讓變量W的值為k的值,循環(huán)結(jié)束條件是W的情等于0,循環(huán)體是讓變量W的值減1,并輸出一個字符* 。上述循環(huán)控制過程用for循環(huán)可描述如下:

  for=(w=k;W!=0; W--) printh("*");

  或?qū)懗桑?/P>

  for(w=k ;w;--w) printf("*");

  若用while語句,可描述如下:

  W=k;

  while(w--!=0)printf("*");

  w++;/*在w等于0時,也執(zhí)行了一次 w--,這里是對w最后減1的補嘗*/

  或更直觀地寫成:

  W=k;

  while(w!=0){ w--;Printf("*");}

  若用do-while語句,可描述如下:

  W=k;

  if(W)

  do{

  w--; prinif("*");

  } while(w);

  若寫成:

  W=k;

  do{

  W--; printf("*");

  } while(w!=0);

  是不正確的,因為原代碼當k的值為0時,不輸出字符*,而上面的改寫,當k的值為0時,將輸出許許多多的字符*。所以解答應(yīng)是C。

  【參考答案】C

  45. 若有下列說明,則數(shù)值為4的表達式是( )

  int a[12]={ l,2,3,4,5,6,7,8,9,10,11,12 };

  char c='a',d, g;

  A.a[g-c]

  B.a[4]

  C.a['d'-'c']

  D.a['d'-c]

  【解析】數(shù)組元素的下標自0開始順序編號,值為4的元素是a[3]。所以只有下標表達式的值為3的才是正確的。下標表達式g-C中的的變量g和c的值是還未被設(shè)定的,其值不確定。a[4]的值為5,下標為4是不對的。'd'-'c'的值為1,a[l]的值是2,所以也是不對的。變量c的值為'a' ,'d'-c=3,所以正確解答是D。

  【參考答案】D

文章搜索
軟件水平考試欄目導(dǎo)航
版權(quán)聲明:如果軟件水平考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉(zhuǎn)載本軟件水平考試網(wǎng)內(nèi)容,請注明出處。