
中華郵政股份有限公司 102 年從業人員甄試試題
職階甄選類科【代碼】: 營運職系統分析【E3305】
專業科目(1):資訊系統開發設計(含系統分析、程式設計、開發程序、程式語言)
*請填寫入場通知書編號:________________
注意:•作答前須檢查答案卷、入場通知書編號、桌角號碼、應試類別是否相符,如有不同應立即請監試
人員處理,否則不予計分。
‚本試卷為一張單面,共有四大題之非選擇題,各題配分均為 25 分。
ƒ非選擇題限用藍、黑色鋼筆或原子筆於答案卷上採橫式作答,請從答案卷內第一頁開始書寫,違
反者該科酌予扣分,不必抄題但須標示題號。
„請勿於答案卷上書寫姓名、入場通知書編號或與答案無關之任何文字或符號,違者該科答案卷即認
無效,並以零分計算。
…應考人得自備使用簡易型電子計算機(須不具財務函數、工程函數或儲存程式功能,且不得發出聲
響)。若應考人於測驗時將不符規定之電子計算機放置於桌面或使用,經勸阻無效,仍執意使用者,
扣除該科目成績 10 分;計算機並由監試人員保管至該節測驗結束後歸還。
†答案卷務必繳回,未繳回者該科以零分計算。
題目一:
某家公司的資訊系統之資料需求如下所述:該公司有許多員工(EMPLOYEE),員工的屬
性有員工編號(Employee ID)、員工姓名(Employee Name)、員工地址(Employee Address)
以及員工出生日期(Employee Birth Date),每位員工的員工編號是唯一的。該公司也有許多
專案(PROJECT),專案的屬性有專案編號(Project ID)、專案名稱(Project Name)、以及專案
起始日期(Project Start Date),每個專案的專案編號是唯一的。員工可以被分派(ASSIGN)做
專案,一位員工可以被分派做許多專案,也可以不被分派做任何專案,一個專案可以分派許
多員工來做,至少要分派一位員工來做。每一位員工被分派做的每一個專案的計薪費率
(Billing Rate)不同。
(一)請畫出一個實體關係圖(Entity-Relationship Diagram)以充分表達上述的資料需
求。【 13 分】
(二)請設計一個關聯式資料庫綱要(Relational Database Schema)以滿足上述的資料
需求。【 12 分】
題目二:
有一程式要求如下:整數 n由鍵盤輸入,n必須為正奇數,若輸入不為正奇數,程式會
要求重新輸入,一直到輸入值為正奇數為止,然後,程式會計算 1+3+5+…+n 的總和。
(一)請利用 do while 迴圈,畫出上述程式流程圖。【 12 分】
(二)請以 C或JAVA 程式語言利用 do while 迴圈,完成上述程式。【 13 分】
題目三:
(一)Rational 統一流程模式(Rational Unified Process:RUP)於1998 年由 Jacobson
等人提出。該模式結合螺旋模式的概念,以反覆與漸增的軟體開發原理進行軟體
發展,且每一次的反覆後需產出一個可運作的系統版本,並在每一個反覆週期中
評估風險,以盡早發現問題。請完成下列有關 RUP 問題的填空。【作答時,請標
示(1)至(6)題號,共 12 分,每格 2分】
(a) RUP 模式的動態面把軟體開發依序分成四個主要階段:初始、 (1) 、
(2) 與轉移。這四個階段構成一個週期,週期可反覆進行,每個週期
內之各階段也可視情況反覆進行。【註:(1)與(2)順序可對調】
(b) RUP 模式的靜態面結構主要處理依邏輯順序將軟體開發與管理支援工作表
達成九個核心工作流程:企業塑模、 (3) 、 (4) 、 (5) 、
測試、配置、組態管理與變更管理、 (6) 、環境等,其中前六項是軟
體工程工作,而後三項是管理支援工作。【註:(3)至(5)順序可對調,但(6)不
可與(3)至(5)順序對調】
(二)螺旋模式之軟體開發程序是基於瀑布模式應用於政府大型軟體專案之經驗,經多
次修改而成。其執行由三個步驟形成一週期,請問有哪三個步驟?【9分】
(三)一般資訊系統之開發階段可以分成分析、設計與實施等三階段,請問在設計階段
可以分成哪二種設計?【4分】
題目四:
(一)在程式語言中資料的儲存需要記憶體空間,而不同的資料型態會有不同的空間需
求,有些程式語言允許不同型態間的轉換(Type conversion),型態轉換有可能會有
narrowing conversion 的問題,請舉例說明何謂 narrowing conversion?【4分】
(二)在一些程式語言中可以有 overloaded subprograms(副程式的覆載),請解釋何
謂overloaded subprograms?【5分】
(三)副程式的參數傳遞可以有多種不同的方式,請解釋何謂 Pass-by-Value 及
Pass-by-Reference?並請說明此二種對於主程式參數影響之差異為何?【6分】
(四)在程式撰寫中如果程式設計師撰寫一行敘述『b=a+fun(a);』, 有可能會出現函式
邊界效應(function side effect),請解釋何謂函式邊界效應?【5分】
(五)在很多的程式語言中都會有指標(Pointer)可以指到一個物件(可能是資料或副程
式),指標的使用如果不當,有可能會產生 Dangling Pointer,下列程式片段中就
有可能會產生此一問題,請解釋何謂 Dangling Pointer?【5分】
int * arrayPtr1;
int * arrayPtr2 = new int [50];
arrayPtr1 = arrayPtr2;
delete [ ] arrayPtr2;