lawpalyer logo

電力工程 106 年計算機概論考古題

民國 106 年(2017)電力工程「計算機概論」考試題目,共 15 題 | 資料來源:考選部

0 題選擇題 + 15 題申論題

分封交換(packet switching)技術是現在世界上網際網路通訊最重要的基礎,請詳述 此技術的工作原理。(15 分)
採用二進制表示法(binary representation)的理由是什麼?(10 分) 下列二進制樣式(binary pattern )代表某數以IEEE 754 單精度浮點數 (single-precision floating-point number)的表示法,在單精度的表示法中,三部份 分別需要1 個位元、8 個位元及23 個位元;則該數以十進制表示(decimal representation)是多少?詳細說明轉換過程。(15 分)
作業系統透過「行程映像(process image)」來控制行程(process)的執行。什麼 是行程映像?(10 分) 行程映像通常包含那些基本內容?詳細說明之。(15 分)
冗餘(redundancy)是容錯系統(fault-tolerant system)常使用的設計方法。具有容錯 特性的電腦系統中,冗餘的類型有那些?請詳述每一種類型並舉例說明。(20 分)
說明協定分層(protocol layering)的兩個理由。(10 分) 說明協定分層(protocol layering)的兩個原則。(10 分)
說明通訊介面(interface)與通訊協定(protocol)的差異。(10 分) 什麼是網路插槽(network socket)?網路插槽是一種通訊介面或是通訊協定?說 明理由。(10 分)
水桶排序(bucket sort)是一種常見的排序方法。 使用水桶排序法將下列十個數字由小到大排列,必須清楚解釋排序過程。(15 分) 28, 57, 16, 0, 72, 99, 33, 82, 12, 67 當排序的數字有何種特性時,水桶排序法的平均時間複雜度可達O(n)?請試述其 理由。(10 分)
對任何一棵二元樹(binary tree),假設它含有L 個樹葉節點(leaf node),且具有兩 個孩子(children)的內部節點(internal node)的個數為T。 L 與T 的關係式是什麼?(5 分) 證明題是正確的。(15 分)
詳細說明下列程式之目的,包含使用的演算法、輸入、輸出、資料結構、函數、程 式執行步驟。若輸入為:8 3 9 4 2 7 6,詳細列出程式執行的過程。(20 分) 01 02 03 04 05 06 07 08 09 #include <stdio.h> main() { int i, j, t, a[8]; for (i = 1; i < 8; i++) scanf("%d", &a[i]); for (i = 1; i <= 6; i++) for (j = i + 1; j <= 7; j++) if (a[i] > a[j]) 10 11 12 13 14 15 16 17 { t = a[i]; a[i] = a[j]; a[j] = t; } for (i = 1; i <= 7; i++) printf("%5d", a[i]); }
下列為某一語言之BNF(Backus-Naur Form)表示法: <assignment> ::= <identifier> = <expr> <expr> ::= <expr> + <expr> | <expr> – <expr> | <expr> * <expr> | <digit> <identifier> ::= A | B | C | D | E <digit> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 C = 8 + 3 * 2 – 5 是否合乎此語法?請詳細說明理由。(10 分) 請問此語法是否為混淆的(ambiguous)?請詳細解釋理由。(10 分)
程式A 列印出的結果是什麼?說明理由。(10 分) 程式B 總共列印出 "TaiwanNumberOne" 多少次?說明理由。(10 分) 程 式 A 程 式 B 1 2 3 4
執行下列程式A 將會得到什麼結果?詳細說明理由。(10 分) 執行下列程式B 將會得到什麼結果?詳細說明理由。(10 分) 程 式 A 程 式 B 01 02 03 04 05 06 07 08 09 10 11 12 #include <stdio.h> #include <iostream> main() { int i=7, a, b, c, d; a=i++; b=++i; c=i--; c+=c; d=--i; d=--d; printf("%d, %d, %d, %d", a, b, c, d); system("PAUSE"); } 01 02 03 04 05 06 07 08 09 10 11 #include <stdio.h> #include <iostream> main() { int a[5]={1, 3, 5, 7, 9}; int b=7, c=0; b++; c=b+a[5]; printf("%d, %d\n", b, c); system("PAUSE"); }
請詳細解釋下列C 語言程式的執行過程,包括foo 函式被呼叫的順序(必須列出參 數num 的數值),最後寫出程式的輸出。(20 分) #include <stdio.h> int foo(int num); int main(void) { printf("%d\n",foo(5)); return(0); } int foo(int num) { if ((num<=0) || (num==2)) return 1; else if (num==1) return 2; else return (foo(num-2)+foo(num-3)+foo(num-1)); }
(5)
(0)
編碼(encoding)、加密(encryption)、雜湊(hashing)三者有何差異,分別舉例並 詳細說明。(15 分)
#include <stdio.h> int main () { float x = 5.6; int y = (int)(x + 0.5); printf ("Result = %d\n", y); return 0; } 1 2 3 4 5 6 7 #include<stdio.h> int main() { printf("TaiwanNumberOne"); main(); return 0; } 五、解釋下列術語:(每小題5 分,共15 分) WPA(Wi-Fi Protected Access) 強密碼(strong password) 通訊埠掃描(port scanning) 0 10000000 110 0000 0000 0000 0000 0000