lawpalyer logo

資訊處理 102 年程式設計概要考古題

民國 102 年(2013)資訊處理「程式設計概要」考試題目,共 8 題 | 資料來源:考選部

0 題選擇題 + 8 題申論題

下列的Java 語言程式中,存在一個Math 的類別做為遞迴演算。 請問下列程式的輸出為何?請依據下列程式邏輯,寫下運算輸出結果的過程。 (10 分) 如果在第06 與07 行之間加入一行敘述System.out.println(n);請問執行程式後n 值 依序輸出的結果為何?(10 分) 01 class Math { 02 int math_num(int n) { 03 if(n <= 2) 04 { 05 return 1; 06 } 07 return math_num(n - 3) + math_num(n - 2) + math_num(n - 1); 08 } 09 } 10 public class ShowMath { 11 public static void main(String[] argv) { 12 Math m = new Math(); 13 System.out.println(m.math_num(8)); 14 } 15 }
(8)
假設目前陣列PrimeAry 儲存所有比n 小的質數,撰寫一函數IsPrime(n)判別n 是 否為質數。譬如:IsPrime(3)回覆True,IsPrime(4)回覆False。(15 分) 撰寫一函數BuildPrime(m),使用IsPrime 函數建立陣列PrimeAry,使其擁有小於 或等於m 的所有質數。譬如:BuildPrime(5)將使PrimeAry 陣列依序儲存2, 3, 5, 而BuildPrime(10)將使PrimeAry 陣列依序儲存2, 3, 5, 7。(15 分)
(3)
(4) 15 分
(5)
(10) 15 分
請回答下列問題: XML 與HTML 的主要區別。(5 分) ADO.NET 有兩大重點,分別是DataReader 與DataSet 這兩種,請描述其相異之 處。(5 分) 在ASP.NET 中建置一個Web 網站,這個應用程式包含了100 個頁面。若想要在 建置應用程式的環境中,當發生一個HTTP 代碼錯誤時,可以顯示一個自訂的錯 誤頁面給使用者。請問要花最小的代價完成這些目標,可以在這個應用程式那二 個檔案中,建置CustomErrors 事件去處理HTTP 錯誤?(5 分) 在C#中,string str = null 與 string str = " " 的區別為何?(5 分) (請接第二頁) 102年特種考試地方政府公務人員考試試題 類 科: 資訊處理 全四頁 第二頁
假設目前陣列PrimeAry 儲存所有比n 小的質數,撰寫一遞迴函數(Recursive function)FactorTimes(n, p),回覆正整數n 含有質數p 的因數次數。譬如: 11
由於避免個資外洩,欲撰寫一Java 程式,姓名與身分證字號僅顯示部分內容,下列 為Java 部分程式片段,請依據下列原則以迴圈方式完成方框內的程式:(20 分) 姓名顯示原則為只顯示名字的第一個字與最後一個字,但是名字如果只有二個字, 則顯示「李X」,例如名字為「李大同」,則顯示「李X 同」。不限定名字的長 度都可以顯示此型態。 身分證字號顯示原則為顯示一個字元、隱藏一個字元,例如身分證字號為 「A123456789」,則顯示「A*2*4*6*8*」。 public static void main(String[] arg) { String hidename="李大同"; String hideid="A123456789"; String name=""; String id=""; //隱藏姓名 System.out.println(name); //隱藏身分證字號 System.out.println(id); } (請接第三頁) 102年特種考試地方政府公務人員考試試題 類 科: 資訊處理 全四頁 第三頁
2 792 2 3 × × = ,FactorTimes(792, 2) 回覆3 ,FactorTimes(792, 3) 回覆2 , FactorTimes(792, 5)回覆0,FactorTimes(792, 11)回覆1。(15 分) 假設目前陣列PrimeAry 儲存所有比n 小的質數,撰寫一函數PrimeFactor(n)求出 正整數n 的質因數及其因數次數,並將結果以字串傳回。譬如:PrimeFactor(20)將 回傳字串"2^2 * 5",PrimeFactor(72)將回傳字串"2^3 * 3^2",而PrimeFactor(97)將 回傳字串"97"。(15 分) 三、若將上述方法(主程式除外)封裝成一個類別PrimeClass,請實踐上述規劃的 及。(10 分) 使用網頁技術來建立下列系統:要求使用者輸入一個小於10000 的正整數,判別它 是否在要求的範圍內;該判別方法(名稱為Check_Inp_Val)必須在客戶端(Client) 完成,不可在伺服器(Server)完成。若輸入值在範圍內,則呼叫伺服器端處理 函數mainPrime;否則在網頁直接發布相關訊息,中斷處理(不呼叫處理函數 mainPrime)。(20 分) 請撰寫處理函數mainPrime,讓系統可以求出輸入數值的質因數分解。(10 分)
(20)
(72)
(97) 15 分
下列均為程式片段,請回答下列問題: 請問下列C++程式的目的為何?若輸入21、235、71、64、129 五個數值,則輸 出結果為何?(5 分) 01 int main() 02 { 03 double num(0); 04 double *xarray; 05 xarray=new double[5]; 06 cout<<"請輸入5 個數值,謝謝!"<<endl; 07 for(int i=0;i<=4;i++) 08 { 09 cin >>*(xarray+i); 10 if(*(xarray+i)>num) 11 num = *(xarray+i); 12 } 13 cout<<"結果:"<<num<<endl; 14 } 請問下列C++程式的目的為何?若輸入數值659845,則輸出結果為何?(5 分) 01 int main() 02 { 03 static int InputNum,DispNo,Result; 04 cout << "請輸入任一整數"; 05 cin >> InputNum; 06 while(InputNum > 0) 07 { 08 DispNo = InputNum % 10; 09 Result += DispNo; 10 InputNum /= 10; 11 } 12 cout << "結果:" << Result <<endl; 13 } 請問下列C 程式所依據的數學公式為何?(例如∑= − n i i n ia x 0 ) 若輸入數值為5,則輸出結果為何?(10 分) 01 int main() 02 { 03 int sum1=0,sum2=0,n,i,j; 04 printf("輸入一數字:\n"); 05 scanf("%d",&n); 06 for(i=0;i<=n;i++){ 07 for (j=0;j<=i;j++){ 08 sum2+=j; 09 } 10 if(i%2==0) 11 sum1-=sum2; 12 else 13 sum1+=sum2; 14 sum2=0; 15 } 16 printf("結果為:%d\n",sum1); 17 return 0; 18 } (請接第四頁) 102年特種考試地方政府公務人員考試試題 類 科: 資訊處理 全四頁 第四頁
(0) 5 分
下列的HTML 程式中,執行後自動顯示今天日期。 使用者輸入生日(西元格式)後,按submit 顯示民國生日格式與年齡。 „執行結果顯示生日的民國日期與年齡: 年齡的算法為精確年齡計算方式,若今年生日已過,則為今年與生日年份相減,若 今年生日未過,則為今年與生日年份相減再減1。請依題意完成下列程式(需在10 個 灰色網底位置填入適當指令)。(每小題2 分,共20 分) 01 <html> 02 <head> 03 <script language="javascript"> 04 function CurrentDate() 05 { 06 date= new Date(); 07 var d = n ; //Set day of date 08 var m= o ; //Set month of date 09 var y= p ; //Set year of date 10 11 document.getElementById('CurDate').value= y + '/' + m + '/' + d; 12 } 13 14 function display() 15 { 16 var birthday = q ; 17 var today = new Date(); 18 var age = r ; 19 var Ryears = birthday.getFullYear()-1911; 20 21 // Reset birthday to the current year. 22 s ; 23 24 // If the user's birthday has not occurred yet this year, subtract 1. 25 if ( t ) 26 { 27 u ; 28 } 29 30 document.write("你的生日:民國" + Ryears +" 年 " + (birthday.getMonth()+1) + " 月 " + birthday.getDate() + "日</br>"); 31 document.write("你目前年齡是: " + age + " 歲"); 32 } 33 34 </script> 35 </head> 36 <body onload= v > 37 <form name="Age" method="post"> 38 今天日期:<input type="text" name="CurDate" id="CurDate" readonly="readonly"> 39 你的生日:<input type="date" name="Birthday" id="Birthday"> 40 41 <input type="submit" name="submit" value="submit" onClick= w > 42 </form> 43 </body> 44 </html>