電子工程 106 年計算機概要考古題(共 40 題) 資料來源:考選部歷屆試題|法律人 LawPlayer 整理 https://lawplayer.com/exam/electronic-engineering/106-%E8%A8%88%E7%AE%97%E6%A9%9F%E6%A6%82%E8%A6%81 第 1 題 關聯式資料庫(relational database)中有兩個表格為students 和takes,這兩個表格只共用屬性id,當要用此屬性連接兩個表格時,只要取出兩個表格皆出現的資料列(tuple),則應該使用下列那個SQL指令(根據ISO 頒布的SQL 標準語法)?SELECT * FROM students NATURAL INNER JOIN takes; (A) SELECT (B) * FROM students LEFT OUTER JOIN takes USING (id);SELECT * FROM students RIGHT OUTER JOIN takes ON students.id = takes.id; (C) SELECT * FROM students NATURAL FULL OUTER JOIN takes; 正解:A 第 2 題 下列何者不屬於資料庫管理系統中的功能模組? (A) 資料定義語言編譯器(data definition language compiler) (B) 資料操作語言編譯器(data manipulation language compiler) (C) 主體語言編譯器(host language compiler) (D) 程式語言編譯器(programming language compiler) 正解:D 第 3 題 下列何者是八進制數字112.4 的十進制表示法?(78.25) (A) 10(74.5) (B) 10(92.75) (C) 10(70.25) (D) 10 正解:B 第 4 題 最適合做為外部排序的方法是:Merge sort (A) Insert sort (B) Quick sort (C) Bubble sort 正解:A 第 5 題 一個全加器(Full Adder)的邏輯電路,無法透過下列那一個選項的邏輯閘組合而成?NAND (A) NOR (B) AND, OR, XOR (C) XOR, NOT 正解:D 第 6 題 一張1600×900 像素全彩影像,在不壓縮且不包含其它資訊的情況下,其資料量約為多少KByte?1440 (A) (B) (C) 正解:C 第 7 題 作業系統不提供下列何種服務? (A) 控制I/O (B) 記憶體分配CPU (C) 行程監控 (D) 偵測病毒入侵 正解:D 第 8 題 Module-N 計數器如下圖所示,其中(D3D2D1D0)2 表示資料輸入位元,(Q3Q2Q1Q0)2 表示資料輸出位元,其餘控制位元具有下表之操作特性,試問該計數器為何種計數器?Module (A) -9 計數器Module (B) -10 計數器Module (C) -15 計數器Module (D) -16 計數器ClockClearClearClockLoadCount功能說明010×LoadCount0111×××11000Q0Q1Q2Q3D0D1D2D3Clear to 0Load inputCount next binary stateNo change 正解:A 第 9 題 採用虛擬記憶體(Virtual memory)的主要目的不包含下列何者? (A) 可提供對程式執行空間的保護 (B) 讓多個程式間可以共享記憶體 (C) 節省程式執行之功率消耗 (D) 使單一程式的程式大小超過系統之主記憶體大小 正解:C 第 10 題 下列那一項週邊對於計算機系統上直接記憶體存取(DMA)的機制需求最高? (A) 鍵盤 (B) 繪圖卡 (C) 滑鼠 (D) 遊戲搖桿 正解:B 第 11 題 下列四個數A=(010 110 011 010)2,B=(2642)8,C=(59B)16,D=(1536)10,其大小關係何者正確?D>B>C>A (A) B>C>D>A (B) D>B>A>C (C) C>B>D>A 正解:A 第 12 題 某嵌入式處理器僅具有加法器(adder)與移位器(shifter),而不具備乘法器。欲執行運算F=A*10,下列運算方式何者正確?F=A<<4 (A) F=(A<<3)+(A<<1) (B) F=A<< (C) 5-A<<2F=A<<3+A<<2 正解:B 第 13 題 下列何者為氣泡排序法(bubble sort)在最糟情況(worst case)下的計算時間複雜度?O(log n) (A) O(n) (B) O(n log n) (C) O(n (D) 2) 正解:D 第 14 題 下圖expression tree 所表示的運算為何?(a+b)*(x*(c (A) -d))a+b*x*(c (B) -d)a+b*x+c (C) -d(a+b)*(x+c) (D) -d 正解:A 第 15 題 在二元樹中,令N0 為沒有分枝(branch)的節點(node)個數,N1 為有一個分枝的節點個數,N2 為有二個分枝的節點個數。則下列等式何者正確?N (A) 0=N2+1N (B) 0=N2-1N (C) 1=N2+1N (D) 1=N2-1 正解:A 第 16 題 每個陣列在宣告時並不需要那種外顯或隱含的資訊? (A) 陣列的名稱 (B) 陣列的資料型態 (C) 陣列要儲存的第一個資料值 (D) 陣列的索引集合 正解:C 第 17 題 宣告一個名為bottle 的C++類別(class)如下所示,然後接下來宣告bb 為對應到該類別的一個物件,並依序執行以下指令:bb.push('x')、bb.push('y')、bb.push('z')、bb.pop(),則最後所回傳的值為下列何者?class bottle {private:int top;char elements[50];public:bottle ( ) { top = -1; };char pop ( ) { top = top -1;return elements[top+1];}void push (char c) { top = top + 1;elements[top] = c;}};x (A) y (B) z (C) NULL (D) *+abx-*cd 正解:C 第 18 題 關於雙向佇列的敘述,下列何者錯誤? (A) 同時有著堆疊(Stack)和佇列(Queue)的功效可以透過陣列(Array)來實作 (B) 可以透過陣列來實作 (C) 可以透過雙向鏈結串列(Doubly Linked List)來實作 (D) 只可以透過單向鏈結串列(Linked List)來實作 正解:D 第 19 題 執行下列C 程式碼後,j 的值為何?int i=0,j=2;if (i = 0)j += 1;elsej -= 1;0 (A) 1 (B) 2 (C) 3 正解:B 第 20 題 下列何者不是用來計算最小成本生成樹(minimum-cost spanning tree)的演算法? (A) 克羅斯科法(Kruskal's Algorithm) (B) 普林法(Prim's Algorithm) (C) 索林法(Sollin's Algorithm) (D) 戴克斯楚法(Dijkstra's Algorithm) 正解:D 第 21 題 針對下圖的graph 以depth-first traversal 進行探索。下列各節點(vertex)訪問順序中,何者不可能是其訪問順序? (A) a, g, c, b, h, j, i, k, d, e, f (B) a, g, f, e, d, b, c, h, i, j, k (C) a, g, d, c, e, f, b, h, i, j, k (D) a, d, e, f, g, c, b, h, j, i, k 正解:C 第 22 題 下列何者數值與其他選項不同?(10111001) (A) 2(B9) (B) 16(271) (C) 8(181) (D) 10 正解:D 第 23 題 執行下列C++程式碼後,螢幕印出的數字為何?int main( ) {int A[4][4]={1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4};int total=0;for(int i=0;i<4;i++)for(int j=0;j<4;j++){if((i+j)>5) break;total+=A[i][j];}cout<int main(){int i, j;for (i=2, j=3; i<= 2*j; i++, j-=2){printf("*");}return 0;}6 (A) 2 (B) 1 (C) 3 正解:C 第 28 題 關於TCP 埠號(port number)使用的敘述,下列何者錯誤? (A) 埠號80 是HTTP (B) 埠號23 是Telnet (C) 埠號20 及21 是FTP (D) 埠號26 是SMTP 正解:D 第 29 題 下列何者是一種宣告式程式語言(declarative programming language)?Pascal (A) Prolog (B) Scheme (C) Smalltalk 正解:B 第 30 題 執行下列Java 程式後,產生的輸出為何?class Test{public static void main(String[] args){Test p = new Test();p.start();}void start(){boolean b1 = false;boolean b2 = false;fix(b1);System.out.println(b1 + " " + b2);}void fix(boolean b1){b1 = true;}}false false (A) false true (B) true true (C) true false 正解:A 第 31 題 執行下列C++程式碼後,螢幕印出的數字為何?int main( ) {int k=0;for(int i=0;i<5;i++){for(int j=0;j<5;j++){if(j%2) k=k+j;}}cout<< k <