100年 公 務 人 員 普 通 考 試 試 題 代號:44120 類 科: 資訊處理
科 目: 程式設計概要
考試時間: 1 小時 30 分 座號:
※注意: 禁止使用電子計算器。
不必抄題,作答時請將試題題號及答案依照順序寫在試卷上,於本試題上作答者,不予計分。
(請接背面)
全一張
(正面)
一、請設計一程式,在輸入一個正整數四則運算式(只有加、減、乘、除四種運算,不 含括號)後,計算運算式並將結果輸出。假設所有運算一律採由左至右順序運算。
請注意:所有輸入運算式所含數值資料皆為正整數。進行除法運算只取整數結 果,若無法整除時採捨去小數方式。例如:輸入整數四則運算式:121*3/2,計算結 果為 181。(25 分)
二、陣列 a 與 b 皆為嚴格遞減正整數陣列,同一陣列中不含重複數值,且它們均以 0 作為 辨識結束元素(即最後一個元素)。請設計 C 函式 merge(int a[], int b[], int out[]),
將兩個嚴格遞減正整數陣列 a 與 b,依由大至小順序進行合併,合併結果 out[]仍為 一個以 0 作為辨識結束元素的嚴格遞減正整數陣列。若兩個陣列中含有相同數值之 元素時,合併內容需不含重複數值。例如:a 內容:128, 34, 23, 17, 10, 0;b 內容:
1352, 127, 34, 23, 17, 9, 0;合併後內容:1352, 128, 127, 34, 23, 17, 10, 9, 0。(25 分)
三、請以JavaScript設計一個標題為「BMI 量測」動態網頁。當瀏覽器開啟此網頁時,
會出現如圖一畫面,使用者可由表單(Form)輸入身高及體重數值後,再按「確定」
按鈕,程式會顯示計算後的BMI指數,並依圖二內容以適當的文字顯示診斷結果。
例如當BMI指數小於 18.5 時,診斷結果顯示「體重過輕」。當身高或體重未輸入資 料時,顯示「請輸入你的身高體重」的警告視窗。
(註:BMI指數=體重(公斤)÷(身高(公尺))2)(25 分)
BMI 指數 診斷結果 BMI<18.5 體重過輕 18.5≦BMI<24 正常範圍 24≦BMI<27 體重過重
BMI≧27 肥胖 確定
身高(公分)
體重(公斤)
BMI 指數 診斷結果
圖一 圖二
100年 公 務 人 員 普 通 考 試 試 題 代號:44120 類 科: 資訊處理
科 目: 程式設計概要
全一張
(背面)
四、請問下列 C 程式片段執行後,s1 的內容為何?(7 分)
strcpy(s1,"tire-bouchon");
strcpy(&s1[4],"d-or-wi");
strcat(s1, "red?");
請問下列 C 程式片段執行後,a 陣列的內容為何?(7 分)
#define N 10
int a[N]={1,2,3,4,5,6,7,8,9,10};
int *p=&a[0], *q=&a[N-1], temp;
while(p < q) { temp=*p;
*p++=*q;
*q--=temp;
}
C 函式 mystery 內容如下,請描述 mystery 的功能為何?(6 分)
void mystery (int n) { if (n !=0)
{ mystery (n/2);
putchar('0'+n%2);
}
return;
}
承,請問 mystery(15)的輸出結果為何?(5 分)