首頁(yè)考試吧論壇Exam8視線考試商城網(wǎng)絡(luò)課程模擬考試考友錄實(shí)用文檔求職招聘論文下載
2013中考
法律碩士
2013高考
MBA考試
2013考研
MPA考試
在職研
中科院
考研培訓(xùn) 自學(xué)考試 成人高考
四 六 級(jí)
GRE考試
攻碩英語(yǔ)
零起點(diǎn)日語(yǔ)
職稱英語(yǔ)
口譯筆譯
申碩英語(yǔ)
零起點(diǎn)韓語(yǔ)
商務(wù)英語(yǔ)
日語(yǔ)等級(jí)
GMAT考試
公共英語(yǔ)
職稱日語(yǔ)
新概念英語(yǔ)
專四專八
博思考試
零起點(diǎn)英語(yǔ)
托福考試
托業(yè)考試
零起點(diǎn)法語(yǔ)
雅思考試
成人英語(yǔ)三級(jí)
零起點(diǎn)德語(yǔ)
等級(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)檢員
法律顧問(wèn)
管理咨詢
企業(yè)培訓(xùn)
社會(huì)工作者
銀行從業(yè)
教師資格
營(yíng)養(yǎng)師
保險(xiǎn)從業(yè)
普 通 話
證券從業(yè)
跟 單 員
秘書(shū)資格
電子商務(wù)
期貨考試
國(guó)際商務(wù)
心理咨詢
營(yíng) 銷 師
司法考試
國(guó)際貨運(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ì)職稱
法律顧問(wèn)
ACCA考試
注冊(cè)會(huì)計(jì)師
資產(chǎn)評(píng)估師
審計(jì)師考試
高級(jí)會(huì)計(jì)師
注冊(cè)稅務(wù)師
國(guó)際內(nèi)審師
理財(cái)規(guī)劃師
美國(guó)注冊(cè)會(huì)計(jì)師
一級(jí)建造師
安全工程師
設(shè)備監(jiān)理師
公路監(jiān)理師
公路造價(jià)師
二級(jí)建造師
招標(biāo)師考試
物業(yè)管理師
電氣工程師
建筑師考試
造價(jià)工程師
注冊(cè)測(cè)繪師
質(zhì)量工程師
巖土工程師
造價(jià)員考試
注冊(cè)計(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í)用文檔 英語(yǔ)學(xué)習(xí) 作文大全 求職招聘 論文下載 訪談|游戲
軟件水平考試
軟件水平考試資訊
軟件水平考試試題
軟件水平考試專項(xiàng)輔導(dǎo)
軟件水平考試交流互動(dòng)
軟件水平考試交流互動(dòng)
您現(xiàn)在的位置: 考試吧 > 軟件水平考試 > 模擬試題 > 程序員 > 正文

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

  三、程序設(shè)計(jì)題

  1.編函數(shù)計(jì)算并返回m行6列整型數(shù)組a周邊元素之和(即第1行、第m行、第1列、第6列上元素之和,但是重復(fù)元素只參加1次求和)。數(shù)組名a和m、n作為函數(shù)參數(shù)。

  【解析】先用單重循環(huán)求第1行和第m行上元素之和,控制循環(huán)的變量i對(duì)應(yīng)列下標(biāo),依次等于0、1、…、5,參與求和的數(shù)組元素是a[0][i]和a[m-1][i]。

  再用單重循環(huán)求第1列和第6列上元素之和(注意排除第1行和第m行),控制循環(huán)的變量1對(duì)應(yīng)行下標(biāo),依次等于1、…、m-2,參與求和的數(shù)組元素是a[i][0]和a[i][5]。

  【參考答案】int fun(a,m)

  int a[][6];

  { int i,s=0;

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

  s+=a[0][i]+a[m一1][i];

  for(i=1;i

  s+=a[i][0]+a[i][5];

  return(S);

  }

  2.編程序從鍵盤(pán)上輸入一個(gè)字符串(長(zhǎng)度小于或等于80),分別統(tǒng)計(jì)其中的字母、數(shù)字和其他字符的數(shù)目。本題要求用指向數(shù)組首地址的指針變量來(lái)處理字符率中的字符。

  【解析】定義字符型數(shù)組和指向數(shù)組首地址的指針變量。利用系統(tǒng)函數(shù)輸入一個(gè)字符串,存入字符型數(shù)組。利用單重循環(huán)依次處理字符串中的單個(gè)字符,直到當(dāng)前字符是字符率結(jié)束標(biāo)記符為止。在循環(huán)體中利用if-else組成的嵌套雙分支結(jié)構(gòu)處理3個(gè)分支:是字母的,則在對(duì)應(yīng)計(jì)數(shù)變量c1且中加1;是數(shù)字的,則在對(duì)應(yīng)計(jì)數(shù)變量c2中加1;其他情況,則在對(duì)應(yīng)計(jì)數(shù)變量c3中加1。注意,這3個(gè)計(jì)數(shù)變量在循環(huán)前必須清0。

  【參考答案】main()

  { char s[81],*p=s;

  int c1,c2,c3;

  c1=c2=c3=0;

  scanf("%s",s);

  while(*p!='\0')

  { if((*p>='a')&&(*p<='z'))

  c1++;

  else if((*p>='A')&&(*p<='Z'))

  c1++;

  else if((*p>+'0')&&(*p<='9'))

  c2++;

  else

  c3++;

  p++;

  }

  printf("c1=%d c2=%d c3=%d\n", c1,c2,c3);

  }

  3.編寫(xiě)一個(gè)模擬簡(jiǎn)單計(jì)算器的程序,計(jì)算表達(dá)式:a1 op a2的值,要求 a1、op、a2從盤(pán)輸入。其中a1、a2(作除數(shù)時(shí)不能為0)為數(shù)值,op為運(yùn)算符+、-、*、/。

  【解析】本程序首先要定義相關(guān)的變量,a1和a2為單精度實(shí)型,op為字符型。接著要輸入兩個(gè)運(yùn)算數(shù)和運(yùn)算符。最后要按照運(yùn)算符進(jìn)行分支處理,由于分支的條件是運(yùn)算符op等于不同的值,所以可以選取swtch語(yǔ)句來(lái)完成。其中當(dāng)op為'\'時(shí),要注意區(qū)分出除數(shù)a2為0的異常情況。

  【參考答案】#include "math.h"

  main()

  { float a1,a2;

  char op;

  scanf("%f,%c,%f",&a1,&op,&a2);

  switch(op)

  { case'+':printf("a1+a2=%f\n",a1+a2);break;

  case'-':printf("a1-a2=%f\n",a1-a2); break;

  case'*':printf("a1*a2=%f\n", a1*a2);break;

  case'/':if(fabs(a2)<1e-4)

  printf("division by zero.\n");

  else

  printf("a1/a2=%f\n",a1/a2);

  break;

  default:printf("unknown operator.\n");

  }

  }

文章搜索
軟件水平考試欄目導(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)注明出處。