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

2010年軟考程序員考前練習試題及答案解析(9)

來源:考試吧Exam8.com) 2010-10-15 9:34:00 考試吧:中國教育培訓第一門戶 模擬考場
考試吧整理了軟考程序員考前練習試題及答案解析,幫助考生備考程序員考試。

  三、程序設計題

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

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

  再用單重循環(huán)求第1列和第6列上元素之和(注意排除第1行和第m行),控制循環(huán)的變量1對應行下標,依次等于1、…、m-2,參與求和的數組元素是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.編程序從鍵盤上輸入一個字符串(長度小于或等于80),分別統(tǒng)計其中的字母、數字和其他字符的數目。本題要求用指向數組首地址的指針變量來處理字符率中的字符。

  【解析】定義字符型數組和指向數組首地址的指針變量。利用系統(tǒng)函數輸入一個字符串,存入字符型數組。利用單重循環(huán)依次處理字符串中的單個字符,直到當前字符是字符率結束標記符為止。在循環(huán)體中利用if-else組成的嵌套雙分支結構處理3個分支:是字母的,則在對應計數變量c1且中加1;是數字的,則在對應計數變量c2中加1;其他情況,則在對應計數變量c3中加1。注意,這3個計數變量在循環(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.編寫一個模擬簡單計算器的程序,計算表達式:a1 op a2的值,要求 a1、op、a2從盤輸入。其中a1、a2(作除數時不能為0)為數值,op為運算符+、-、*、/。

  【解析】本程序首先要定義相關的變量,a1和a2為單精度實型,op為字符型。接著要輸入兩個運算數和運算符。最后要按照運算符進行分支處理,由于分支的條件是運算符op等于不同的值,所以可以選取swtch語句來完成。其中當op為'\'時,要注意區(qū)分出除數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");

  }

  }

  相關推薦:計算機軟考程序員備考:程序設計知識點匯總
       2010年軟考程序員如何區(qū)分printf與fprintf函數 
文章搜索
軟件水平考試欄目導航
版權聲明:如果軟件水平考試網所轉載內容不慎侵犯了您的權益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉載本軟件水平考試網內容,請注明出處。