首頁考試吧論壇Exam8視線考試商城網(wǎng)絡(luò)課程模擬考試考友錄實(shí)用文檔求職招聘論文下載
2013中考
法律碩士
2013高考
MBA考試
2013考研
MPA考試
在職研
中科院
考研培訓(xùn) 自學(xué)考試 成人高考
四 六 級(jí)
GRE考試
攻碩英語
零起點(diǎn)日語
職稱英語
口譯筆譯
申碩英語
零起點(diǎn)韓語
商務(wù)英語
日語等級(jí)
GMAT考試
公共英語
職稱日語
新概念英語
專四專八
博思考試
零起點(diǎn)英語
托?荚
托業(yè)考試
零起點(diǎn)法語
雅思考試
成人英語三級(jí)
零起點(diǎn)德語
等級(jí)考試
華為認(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)評(píng)估師
審計(jì)師考試
高級(jí)會(huì)計(jì)師
注冊稅務(wù)師
國際內(nèi)審師
理財(cái)規(guī)劃師
美國注冊會(huì)計(jì)師
一級(jí)建造師
安全工程師
設(shè)備監(jiān)理師
公路監(jiān)理師
公路造價(jià)師
二級(jí)建造師
招標(biāo)師考試
物業(yè)管理師
電氣工程師
建筑師考試
造價(jià)工程師
注冊測繪師
質(zhì)量工程師
巖土工程師
造價(jià)員考試
注冊計(jì)量師
環(huán)保工程師
化工工程師
咨詢工程師
結(jié)構(gòu)工程師
城市規(guī)劃師
材料員考試
監(jiān)理工程師
房地產(chǎn)估價(jià)
土地估價(jià)師
安全評(píng)價(jià)師
房地產(chǎn)經(jīng)紀(jì)人
投資項(xiàng)目管理師
環(huán)境影響評(píng)價(jià)師
土地登記代理人
繽紛校園 實(shí)用文檔 英語學(xué)習(xí) 作文大全 求職招聘 論文下載 訪談|游戲
軟件水平考試
軟件水平考試資訊
軟件水平考試試題
軟件水平考試專項(xiàng)輔導(dǎo)
軟件水平考試交流互動(dòng)
軟件水平考試交流互動(dòng)
您現(xiàn)在的位置: 考試吧 > 軟件水平考試 > 模擬試題 > 程序員 > 正文

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

  9.struct stu

  { int num;char name[10];int age};

  void py(struct stu *p)

  { printf("%s\n",(*p).name);}

  main()

  { struct stu student[3]={{1001,"Sun",25},

  {1002,"Ling",23},

  {1003,"Shen",22};

  py(student+2);

  }

  【解析】本程序是由3段組成的。第1段是結(jié)構(gòu)型stn的定義;第2段是函數(shù)py()的定義;第3段是主函數(shù)。

  我們先分析主函數(shù)。首先定義了結(jié)構(gòu)型stu的數(shù)組student[3],并且給3個(gè)元素的所有成員都賦了初值。接著調(diào)用了函數(shù)py,對(duì)應(yīng)的實(shí)參是結(jié)構(gòu)型數(shù)組元素student[2]的地址。注意,“數(shù)組名+k”是數(shù)組元素“數(shù)組名[k]”的地址。

  再來分析函數(shù)調(diào)用"py(student+2);"。調(diào)用時(shí),首先把實(shí)參傳遞給形參,即把結(jié)構(gòu)型stu的數(shù)組元素student[2」的地址"student+2"傳遞給形式參數(shù)“結(jié)構(gòu)型stu的指針變量p”。

  然后執(zhí)行函數(shù)體,輸出表達(dá)式是"(*p).name",這是結(jié)構(gòu)型stu的指針變量p指向的結(jié)構(gòu)型stu數(shù)據(jù)(即結(jié)構(gòu)型stu的數(shù)組元素student[2〕)的成員name,其值是字符串"Shen"。這就是本題的答案。

  【參考答案】Shen

  10.# include"stdio.h"

  main()

  { char c;

  while((c=getchar())!=’\n’)

  switch(c)

  {case ’0’:

  case’1’: putchar(c);

  case’2’:putchar(c);break;

  case’3’:putchar(c);

  default:putchar(c+1);break;

 。

  printf("\n");

 。

  假定本程序執(zhí)行時(shí)輸入:1357/(其中的/代表回車換行符)。

  【解析】本題也可以采用記錄的方法。

  執(zhí)行 while循環(huán)。

  輸入第1個(gè)字符'1',不是'\n',執(zhí)行switch語句的"case'1'"后的輸出語句,輸出字符'1';由于其后沒有“break”語句,則繼續(xù)執(zhí)行"case'2'"后的語句,輸出字符'1'。輸入第2個(gè)字符'3',不是'\n',執(zhí)行switch語句的"case'3'"后的輸出語句,輸出字符'3';由于其后沒有“break”語句,則繼續(xù)執(zhí)行"default"后的語句,輸出字符'4'。

  繼續(xù)while循環(huán)。

  輸入第3個(gè)字符'5',不是'\n',執(zhí)行switch語句的"default"后的語句,輸出字符'6'。

  繼續(xù)while循環(huán)。

  輸入第4個(gè)字符呼'7',不是'\n',執(zhí)行switch語句的"default"后的語句,輸出字符'8'。

  繼續(xù)While循環(huán)。

  輸入第 5個(gè)字符'\n',是'\n',退出while循環(huán),輸出“回車換行符”。

  注意switch語句的執(zhí)行過程是:在每個(gè)“case”分支之后,可以有多個(gè)語句,程序?qū)⒁来螆?zhí)行這些語句,直到遇見“break”語句或者switch語句的右花括號(hào)“}”。如果某個(gè)“case”分支的后面沒有“break”語句,它在執(zhí)行完本分支后的所有語句之后,將繼續(xù)執(zhí)行下一個(gè)分支中的語句,直到出現(xiàn)“break”語句或者switch語句的右花括號(hào)“}”后才中止本分支的執(zhí)行。

  【參考答案】113468

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