
107年公務人員特種考試關務人員、
身心障礙人員考試及107年國軍上校
以上軍官轉任公務人員考試試題 代號:51030 全一張
(正面)
考試別: 身心障礙人員考試
等別: 四等考試
類科: 資訊處理
科目: 程式設計概要
考試時間 : 1 小時 30 分座號:
※注意:
禁止使用電子計算器。
不必抄題,作答時請將試題題號及答案依照順序寫在試卷上,於本試題上作答者,不予計分。
本科目除專門名詞或數理公式外,應使用本國文字作答。
(請接背面)
一、假設已經將變數 int nMonth 的值設定成介於 1~12 間的整數,用來代表 2018 年的某一
月份,亦即 nMonth 為1時,代表一月、nMonth 為2時,代表二月…依此類推。請依
下列各子題要求分別撰寫出程式片段,在變數 int nDays 中計算出 nMonth 月的天數。
例如 nMonth 是1時,nDays 應該是 31;nMonth 是2時,nDays 應該是 28。作答時可
以使用 C/C++、Java 或C#其中任何一種語言作答,但必須註明所採用語言。
使用 if…else if…else…。(10 分)
使用陣列(array),且不使用 if…else if…else…或switch。(15 分)
二、如果 A, B 都是大小為 M×N的二維陣列,其元素資料型態均為 double,且假設陣列 A
已經有完整的資料。今欲依據 A求得 B,使得 B[i][j]成為在陣列 A中以 A [i][j]為中心
的3×3個數的平均值(當 B[i][j]位於邊界時,仍是以 A[i][j]為中心的 3×3個數的平均
值,惟超出陣列的部分皆以 0取代,即 B[0][0], B[0][N - 1], B[M - 1][0], B[M - 1][N - 1]
是2×2個數的平均值;B[0][j], B[M - 1][j]是2×3個數的平均值, 0 < j < N – 1;B[i][0],
B[i][N - 1]是3×2個數的平均值, 0 < i < M – 1)。無論採用 C/C++或Java 撰寫程式,都
可以用下列程式片段達成任務。請為每一空白處填入一運算式(Expression)完成該
程式片段。作答時須完整寫出此程式片段,並於填空處加底線標示,且不能更改此
程式片段。(25 分)
B[0][0] = ;
B[0][N - 1] = ;
B[M - 1][0] = ;
B[M - 1][N - 1] = ;
for (int j = 1; ; j++)
{
B[0][j] = ;
B[M - 1][j] = ;
}
for (int i = 1; ; i++)
{
B[i][0] = ;
B[i][N - 1] = ;
}
for (int i = 1; ; i++)
for (int j = 1; ; j++)
B[i][j] = ;