資訊處理 100 年程式設計概要考古題
題目為考試當年公告版本,實務標準請以現行規範為準。
請解釋下列程式語言名詞之意義與特性:(25 分) ㈠傳值呼叫(call by value) ㈡抽象類別(abstract class) ㈢方法超載(method overloading) ㈣繼承(inheritance) ㈤封裝(encapsulation)
使用C 語言或Java 語言的指令,完成下列各項工作之要求。(25 分) ㈠寫一個C 語言的指令,宣告ptr 是一個整數型態的指標變數,指向存有數值100 的位址。 ㈡寫一個C 語言的指令,宣告grade 是一個有5 個元素的char 型態的陣列變數,且 將陣列元素初始化為‘A’, ‘B’, ‘C’, ‘D’, ‘E’等字元值。 ㈢寫一個C 語言的for 迴圈,將101 至200 間的偶數列印出來,每一個數印一行。 ㈣寫一個Java 語言的指令,宣告greeting 是一個String 的物件,並將greeting 初始 化為”How are you?”。 ㈤寫一個Java 語言的指令,列印字串”I can do it!”。
說明陣列(Array)與鏈結串列(Linked List)這兩種結構之特性與差異。(20 分)
使用C 語言或Java 語言,撰寫一個叫作linearSearch 的遞迴(recursive)線性搜尋 法函數,此函數有下列幾個參數:key(整數的搜尋鍵)、data(整數的陣列)、 start(搜尋範圍的起始位置)、end(搜尋範圍的結束位置)。如果搜尋鍵在陣列中 出現,則此函數傳回搜尋鍵在陣列中的位置。如果搜尋鍵不在陣列中出現,則此函 數傳回-1。(30 分)
某國的總統大選有5 組候選人參選,在30 個選區中每組候選人的得票數分別記錄 於陣列Votes[30][5]中,請以任何程式語言寫出將該資訊公告於網頁之程式片段,網 頁中將5 組候選人在30 個選區的得票數呈現成5 欄30 列。候選人別及選區別都不 用列出。(20 分)