2018年2月7日 星期三

計概15-02演算法、流程圖、結構化程式設計-統測試題

【四技試題】

D01.下列流程圖如圖執行後的結果,變數j的輸出值為何? (A)5 (B)6 (C)7 (D)8[100商業]

i

0

1

1

2

3

5

8

139

j

1

0

1

1

2

3

5

8

 

C02.下列何者不是結構化程式設計的控制結構之一? (A)循序結構 (B)選擇結構 (C)宣告結構 (D)重複結構。[100管理]

結構化程式設計的控制結構:循序結構、選擇結構、重複結構。

 

D03.設計程式時,為表達流程圖或演算法所代表的指令執行過程,可以使用一種介於自然語言與程式語言之間的表示法,稱之為 (A)二進碼 (B)對照碼 (C)機器碼 (D)虛擬碼。[100管理]

虛擬碼(Pseudo Code)是一種非正式的程式語言,用來幫助程式設計人員發展演算法。

 

A04.結構化的程式語言應避免採用下列哪一種結構? (A)跳躍結構(GOTO) (B)重複結構(repeat) (C)選擇結構(selection) (D)循序結構(sequential)[101商業]

 

C05.下圖某程式片段的運算流程,請問輸出的A值為何? (A)3 (B)6 (C)9 (D)12[101商業]

A

X


3

12

3 + 3 = 6

12 - 1 = 11

6 + 3 = 9

11 - 1 = 10

 

C06.請問在流程圖中,「資料輸入或輸出」與「報表輸出」分別以何種圖示表示? (

A) (B) (C) (D)[101管理]

 

B07.流程圖如右圖所示,請依照流程圖執行,最後印出B的值為何? (A)20 (B)24 (C)27 (D)36[101管理]

A

B


7

2

7 - 1 = 6

2 + 7 = 9

6 - 1 = 5

9 + 6 = 15

5 - 1 = 4

15 + 5 = 20

 

20 + 4 = 24

 

C08.依據美國國家標準協會(ANSI)編製的標準化流程圖符號,以下何者名稱與其符號不相符? (A)處理: (B)判斷(決策) (C)列印: (D)副程式:[102資電]

列印:,輸入/輸出:

 

B09.下列何者是代表「列印報表」的流程圖符號? (A) (B) (C) (D)[102管理]

(A)打孔紙帶,(C)卡片,(D)處理。

 

D10.要設計輸入及統計一班50位學生某課程及格人數的程式,以下程式結構組合何者正確? (A)只需要循序結構 (B)只需要循序結構與重複結構 (C)只需要選擇結構與重複結構 (D)循序結構、選擇結構與重複結構都需要。[103管理]

循序結構:迴圈內的各行敘述、統計結果的輸出。

選擇結構:判斷學生成績是否大於等於60分。如果是,則及格人數加1

重複結構:使用迴圈針對每一位學生進行成績輸入、判斷是否及格。

 

D11.下列哪一個Visual Basic程式片段的程式邏輯與流程圖一致?[104商業]

(A)

If A > B Then

 If A > C Then

  M = A

 End If

Else

 M = C

End If

(B)

If A > B Then

 If A > C Then

  M = A

 End If

End If

M = C

(C)

If A > B Then

 If A > C Then

  M = A

 End If

 M = C

End If

(D)

If A > B Then

 If A > C Then

  M = A

 Else

  M = C

 End If

End If

 

B12. 流程圖的概念是要計算下列何者? (A)整數1~N的加總 (B)整數1~N中有幾個偶數 (C)整數1~N中有幾個奇數 (D)整數1~N的項目個數。[104管理]

I Mod 2 = 0成立,表示i為偶數,則y = y + 1。最後y值表示1~N數值中偶數的個數。

 

A13.流程圖執行後的結果,變數isum的值為何? (A)i = 6sum = 15 (B)i = 5sum = 10 (C)i = 4sum = 6 (D)i = 7sum = 21[105管理]

i

sum


1

0 + 1 = 1

1 + 1 = 2

1 + 2 = 3

2 + 1 = 3

3 + 3 = 6

3 + 1 = 4

6 + 4 = 10

4 + 1 = 5

10 + 5 = 15

5 + 1 = 6

 

 

B14.如圖所示,依流程順利執行完後,列印之A值為何? (A)6 (B)7 (C)8 (D)9[106管理]

A

Sum


1

0 + 1 = 1

1 + 1 = 2

1 + 2 = 3

2 + 1 = 3

3 + 3 = 6

3 + 1 = 4

6 + 4 = 10

4 + 1 = 5

10 + 2 * 5 = 20

5 + 1 = 6

20 + 2 * 6 = 32

6 + 1 = 7

 

 

C15.關於結構化程式設計的敘述,下列何者在流程控制中最不建議使用? (A)選擇(條件)敘述 (B)重複敘述 (C)跳躍敘述 (D)循序敘述。[108管理]

結構化程式設計,由上而下設計,模組化,只有單入口/單出口,避免使用GOTO指令。

 

D16.圖所示,是一常見的直譯器運行步驟。下列哪些處理程序,填入圖中的①→②→③最為適當? (A)戊→甲→丙 (B)戊→丙→丁 (C)乙→甲→丙 (D)乙→甲→丁。[108管理]

甲、翻譯成機器碼

乙、讀入一個敘述

丙、存成執行檔

丁、執行

戊、讀入全部程式

直譯器運行步驟:乙→甲→丁

編譯器運行步驟:戊→甲→連結程式→丙

 

B17.下列何者是代表「迴圈」之流程圖符號? (A) (B) (C) (D)[108管理]

(A)處理,(C)開始/結束,(D)副程式。

 

D18. 圖為一個物聯網的灑水系統流程圖,當系統在早上1015偵測到土壤濕度數值Hm = 45則灑水馬達何時會停止運轉? (A)1040 (B)1030 (C)1020 (D)1015[109資電]

Hm = 4530 < Hm < 45 = False,往下走;

15 < Hm < 30 = False,往下走;

Hm < 15 = False,往下走;

停止灑水馬達1015

結束執行。

 

D19.在流程圖中,如圖之菱形符號的意義為何? (A)列印或輸出 (B)迴圈或重複 (C)開始或結束 (D)決策或判斷。[109管理]

(A)列印或輸出:(B)迴圈或重複:(C)開始或結束:

 

D20. 有一個物流分揀系統,系統會自動讀取收貨地址並進行地址判斷,只要收貨地在臺中以北,就會自動將貨品送往北部倉庫;否則就送往南部倉庫。目前系統狀態,有10件等待分揀的貨品,其運作流程圖可描繪如圖。關於圖中的虛線方框甲與虛線方框乙所該放入的流程圖元件,下列哪個配對是正確的?

(A) (B) (C) (D) [110商業]

 

A21.根據圖之流程圖分析,當程式執行到最後一個列印方塊時,下列敘述何者正確? (A)程式結束時,K = 45 (B)程式結束時,Q = 11 (C)這是一個迴圈程式,迴圈內程式總共執行9 (D)程式結束時,Y = 10[110資電]

While Q < X

K = K + Q

Q = Q + 1

Y = Y - X


0 < 10

0 + 0 = 0

0 + 1 =1

100 - 10 = 90

1 < 10

0 + 1 = 1

1 + 1 = 2

90 - 10 = 80

2 < 10

1 + 2 = 3

2 + 1 = 3

80 - 10 = 70

3 < 10

3 + 3 = 6

3 + 1 = 4

70 - 10 = 60

4 < 10

6 + 4 = 10

4 + 1 = 5

60 - 10 = 50

5 < 10

10 + 5 = 15

5 + 1 = 6

50 - 10 = 40

6 < 10

15 + 6 = 21

6 + 1 = 7

40 - 10 = 30

7 < 10

21 + 7 = 28

7 + 1 = 8

30 - 10 = 20

8 < 10

28 + 8 = 36

8 + 1 = 9

20 - 10 = 10

9 < 10

36 + 9 = 45

9 + 1 = 10

10 - 10 = 0

 

B22.下列哪一個流程圖符號代表「副程式」? (A) (B) (C) (D)[110管理]

(A)決策,(C)處理,(D)輸入/輸出。

 

C23.在流程圖中,關於「判斷」之流程圖符號的敘述,下列何者錯誤? (A)有兩條流出線 (B)用菱形符號表示 (C)用三角形符號表示 (D)依條件式結果決定流出線。[113管理]

 

C24. 參照流程圖,當輸入x = 1, y = 3時,其輸出結果為何? (A)### (B)# (C)*** (D)*[113管理]

x = 1, y = 3

x < y 1 < 3 成立

互換x, y的值 x = 3, y = 1

輸出x* ***

 

B25.下列何者是演算法所必須具備的特性之一? (A)開放性(Openness) (B)有限性(Finiteness) (C)一致性(Consistency) (D)不可分割性(Atomicity)[100管理]

1.輸入(Input):每一個演算法可有零個或多個輸入資料。2.輸出(Output):每一個演算法至少有一個輸出資料。3.明確性(Definiteness):演算法中的每個步驟代表的涵義須明確,不可模稜兩可,任何人來解讀都可得到一致的結果。4.有效性(Deterministic):演算法的每一個步驟必須是可以執行的,或是可以用人工作業追蹤其結果。例如:紙上作業計算結果。5.有限的(Finite):演算法必須能在有限的步驟內完成或終止。

 

D26.下列何者不是描述演算法的方式? (A)文字敘述 (B)流程圖 (C)虛擬碼 (D)甘特圖。[101管理]

 

B27.下列何者是描述演算法的最佳工具? (A)階層圖 (B)流程圖 (C)組織圖 (D)循環圖。[106管理]

流程圖(Flowchart):以特定圖形符號來表示演算法,說明處理方法與步驟。

 

C28.下列關於演算法的敘述,何者錯誤? (A)演算法的每一步驟必須確實可行 (B)演算法可以轉換成流程圖 (C)演算法可以有無限個步驟 (D)演算法是解決問題的方法及步驟。[109管理]

演算法的特性:輸入(Input),輸出(Output),明確性(Definiteness),有限性(Finiteness),有效性(Effectiveness)

(C)演算法不可有無限個步驟。

 

D29.下列何者不是撰寫演算法必須考慮的要素? (A)必須有0個或0個以上的輸入量 (B)至少有1個或1個以上的輸出量 (C)定義明確且在有限步驟內可推導出結果 (D)必須採用一種程式語言的語法。[111管理]

 

D30.演算法常見的表達方式,不包括下列哪一項? (A)流程圖(Flowchart) (B)文字敘述(Statement) (C)虛擬碼(Pseudo Code) (D)心智圖(Mind Map)[111管理]

 

B31.關於演算法的敘述,下列何者錯誤? (A)演算法不一定要有輸入 (B)流程圖不是用來表示演算法 (C)演算法至少要有一個輸出 (D)演算法的執行結果不容許有錯。[113管理]

流程圖:以特定圖形符號來表示演算法,說明處理方法與步驟。

  

【二技試題】

D01.下列何者不是結構化程式設計的基本模組結構? (A)循序結構 (B)選擇性結構 (C)重複結構 (D)直接結構。[90電子]

 

A02.在開發程式時,流程圖是用來 (A)規劃解決方案 (B)定義問題 (C)撰寫程式 (D)分析問題。[90管理]

流程圖:為一種演算法的表現方式,演算法為規劃解決問題的方案。

 

C03.在流程圖符號中,菱形代表 (A)起始 (B)處理 (C)抉擇 (D)終點。[90護理]

 

A04.在結構化程式設計中,應儘量避免使用下列哪一種指令? (A)GoTo指令 (B)If條件判斷指令 (C)Repeat/Until迴圈指令 (D)Select Case選擇指令。[91護理]

結構化程式應少用GoTo敘述(會破壞結構化程式的結構)

 

C05.Pentium CPU的快取(cache)記憶體的取代演算法為何? (A)FIFO(First In First Out) (B)LIFO(Last In First Out) (C)LRU(Least Recently Used) (D)FILO(First In Last Out)[92電子]

LRU演算法:當記憶體內剩餘的空間不足時,資料庫緩衝快取區會保留最常使用的資料,而清除不常使用的資料,以釋放空間。

 

B06-1.考慮圖所示之流程圖:試問當程式結束時,第5指令框內的指令:x x - y,被執行過幾次? (A)2 (B)3 (C)4 (D)5次。

C06-2.同前題,試問當程式結束時,此程式印出之x值為何? (A)-3 (B)0 (C)3 (D)6[93電機]

 

 

 

  


B07.考慮圖所示之流程圖:它的功能為輸入一個正整數n,然後計算1 + 2 + 3 +…+ n,最後印出結果。試問它的第2指令框內可填入甚麼指令? (A)x -1y 0 (B)x 1y 0 (C)x 0y 1 (D)x 0y -1[93電機]

 

 

 

 

 08.考慮圖所示之流程圖:


B08-1.試問當程式結束時,第5指令框內的指令:x x - y,被執行過幾次? (A)2 (B)3 (C)4 (D)5次。

C08-2.同前題,試問當程式結束時,此程式印出之x值為何? (A)-3 (B)0 (C)3 (D)6[93電機]


C09.欲由一個具有n個節點(node)的單鏈結串列(singly-linked list)中刪除一節點,其平均執行時間複雜度(average-case time complexity)應為 (A)O(1) (B)O(log n) (C)O(n) (D)O(n log n)[93管理]

 

A10.時間複雜度(time complexity)為評估程式執行效率的一種標準,試問排序演算法中之氣泡排序法(bubble sort),其平均時間複雜度為何? (A)O(n2) (B)O(n log n) (C)O(n) (D)O(n1/2)[93護理]

 

B11.結構化程式設計概念中,單一入口與單一出口為程式設計時之主要特性,為符合此一特性,試問哪一指令應儘量避免使用? (A)Select...Case (B)GoTo (C)Do…Loop (D)If…Then[93護理]

GoTo為無條件跳躍指令,容易破壞結構化。

 

D12.下列何者是代表「處理」之流程圖符號? (A) (B) (C) (D)[94管理]

 (A)決策判斷,(B)連接點,(C)開始/結束。


C13.Kruskal之最小成本展開樹(minimal cost spanning tree)演算法,是屬於何種類型的演算法? (A)回溯(backtracking) (B)各個擊破(divide-and-conquer) (C)貪婪方法(greedy approach) (D)機率方法(probabilistic approach)[94管理]

 

C14.根據美國國家標準協會ANSI制訂的流程圖符號,矩形代表什麼含意? (A)註解 (B)端點 (C)運算處理 (D)條件判斷[94護理]

(A)註解:(B)端點:(C)運算處理:(D)條件判斷:

 

B15.有關演算法(algorithm)的敘述,下列何者不正確? (A)演算法是由一連串的指令所組成 (B)演算法不一定會終止 (C)演算法中每一個步驟都不能語意含糊 (D)遞迴(recursive)是一種重複執行的演算法。[95電機]

演算法具有有限性,故不一定會終止是錯的。

 

C16.要程式執行得有效率,除程式本身設計正確外,下列哪項因素最為重要? (A)程式寫得愈清楚愈好 (B)尋找好的程式設計師 (C)使用好的演算法 (D)挑選好的程式語言。[95管理]

好的演算法可以撰寫出較有效能的程式。

 

A17.程式設計以條件敘述為真,則其程式碼就要被執行;敘述為假,則其程式碼不執行,此種控制結構稱為 (A)選擇結構 (B)循序結構 (C)迴圈結構 (D)重複結構。[95管理]

程式設計以條件敘述為真,則其程式碼就要被執行;敘述為假,則其程式碼不執行,此乃決策行為,故採用選擇結構。

 

D18.下列何種順序為結構化程式設計的正確流程?①設計演算法,②維護與更新,③撰寫程式,④定義與分析問題,⑤偵錯與測試 (A)①→④→③→②→⑤ (B)①→④→③→⑤→② (C)④→①→③→②→⑤ (D)④→①→③→⑤→②。[95管理]

結構化程式的設計流程:定義及分析問題,規劃解決方案(設計演算法)撰寫程式,偵錯與測試,維護與更新。

 

A19.在演算法分析技術中,每次進行決策都是選擇目前最好的方向前進之解題方法稱為 (A)貪近(greedy) (B)各個擊破(divide-and-conquer) (C)動態規劃(dynamic programming) (D)修剪與搜尋(prune and search)[95管理]

 

D20.使用最大堆積(heap)儲存數值資料,在此資料結構中搜尋最大數的時間複雜度為何? (A)O(1) (B)O(n) (C)O(log n) (D)O(n2)[95管理]

 

C21.下列何者最不適合用來描述一個演算法(algorithm) (A)流程圖(flowchart) (B)高階語言(high level language) (C)組合語言(assembly language) (D)虛擬碼(pseudo code)[96電機]

組合語言為低階語言,可讀性較差,故不適合描述演算法。

 

B22.如圖所示之流程圖,試問當程式執行結束時,其結果為何? (A)a = 8b = 5c = 3 (B)a = 8b = 8c = 5 (C)a = 13b = 8c = 5 (D)a = 13b = 13c = 8[96電機]


A23.若已知n為資料量的大小,下列何者的時間複雜度最少? (A)O(1) (B)O(n) (C)O(log n) (D)O(n2)[96管理]

 

A24.資料流程圖的第零層,僅包含一個程序,該程序即是 (A)全部系統 (B)子系統 (C)最詳細的系統描述 (D)外部實體描述。[96管理]

 

B25.請問流程圖中的菱形,代表的是什麼? (A)資料輸入 (B)邏輯判斷 (C)副程式 (D)報表輸出[96管理]

(A)資料輸入:(B)邏輯判斷:(C)副程式:(D)報表輸出:

 

B26.下列何者不是Dijkstra教授提出之「結構化程式設計」所主張的3個基本結構之一? (A)循序結構 (B)遞迴結構 (C)選擇結構 (D)重複結構。[96管理]

結構化程式設計的基本控制結構:循序結構、選擇結構、重複結構。

 

A27.下列程式片段第1列之敘述,可用何種流程圖符號表示? (A)(B) (C) (D)[96護理]

1 If c >= 20 Then 為條件判斷

2   c = 20

3 End If

 

C28.流程圖中,代表下列何種符號? (A)輸出符號 (B)端點符號 (C)處理符號 (D)迴圈符號。[97電機]

(A)輸出符號: (B)端點符號: (D)迴圈符號:


C29.對於演算法的策略敘述,下列何者錯誤? (A)個別擊破策略(divide-and-conquer method)是將問題分成較小的問題,分別求解答 (B)貪婪策略(greedy method)常用來解決最佳化問題(optimization problem) (C)動態規劃(dynamic programming)是一種由上而下(top-down)的計算策略 (D)二元搜尋法是一種刪除與搜尋策略(prune-and-search method)[97管理]

 

D30.下列何種流程圖符號可表示程式的第一行? (A) (B) (C)(D)[97管理]

1 IF A < 5 THEN 為條件判斷

2   A = 100

3 END IF

 

C31.圖表示下列何種程式結構? (A)GOTO結構 (B)重複(repeat)結構 (C)選擇(selection)結構 (D)循序(sequential)結構。[97護理]

 


C32.在堆疊(stack)中資料進出順序的演算法為何? (A)FIFO(First In First Out) (B)LRU(Least Recently Used) (C)LIFO(Last In First Out) (D)LFU(Least Frequently Used)[98電子]

 

B33.圖所示之流程圖,可用下列何種指令來表示? (A)Case Z Do Y (B)While Y Do Z (C)If Y Then Z (D)If Z Then Y[98電機]

 

 

 

A34.下列何者為流程圖符號所表示的意義? (A)決策 (B)處理 (C)輸入或輸出 (D)開始或結束。[98管理]

 (B)處理: (C)輸入或輸出: (D)開始或結束:


B35.使用二元搜尋法(Binary Search),從n筆已經排序好的資料中找到一筆特定的資料,所需的平均時間複雜度為何? (A)O(1) (B)O(log n) (C)O(n) (D)O(n2)[98管理]

 

D36.下列何者所表示的複雜度最高? (A)O(n3) (B)O(n2log n) (C)O(2n) (D)O(n!)[98管理]

 

B37.在資料流程圖(DFD, Data Flow Diagram)中,圖符號表示何種意義? (A)資料流(Data Flow) (B)資料儲存體(Data Store) (C)外部實體(External Entity) (D)程序(Process)[98管理]

 

D38.相較於非結構化程式設計,下列何者是正確的結構化程式設計觀念? (A)增加程式維護的時間 (B)應使用GOTO指令 (C)可讀性低且不易除錯 (D)應採用模組化設計。[98護理]

 

B39.下列演算法的時間複雜度(Time Complexity)比較,何者正確? (A)O(N2)O(logN)O(N) (B)O(N2)O(N)O(logN) (C)O(logN)O(N2)O(N) (D)O(N)O(logN)O(N2)[98護理]

 

B40.是代表哪種意義的流程圖符號? (A)處理 (B)副程式 (C)輸出/輸入 (D)開始/終止[99電機]

 (A)處理: (C)輸出/輸入: (D)開始/終止:


C41.執行圖所示之流程圖,結束時AB結果各為何?(A)4020 (B)4510 (C)500 (D)5510[99電機]

A

B

N



0

100

1

0+5=5

100-10=90

1+1=2

5+5=10

90-10=80

2+1=3

10+5=15

80-10=70

3+1=4

15+5=20

70-10=60

4+1=5

20+5=25

60-10=50

5+1=6

25+5=30

50-10=40

6+1=7

30+5=35

40-10=30

7+1=8

35+5=40

30-10=20

8+1=9

40+5=45

20-10=10

9+1=10

45+5=50

10-10=0

10+1=11


A42.執行圖所示之流程圖,若輸入之ABC分別為245,結束時C結果為何? (A)2 (B)4 (C)5 (D)9[99電機]

A + B = C 2 + 4 = 6 > 5,且A < B 2 < 4C = A = 2

 

 

 

 

 

A43.下列何者所表示的複雜度最高? (A)O(nn) (B)O(100n) (C)O(n100)(D)O(n!)[99電機]

 

B44.BASICIf...Then...敘述,可用下列何項流程圖符號來表示? (A) (B) (C) (D)[99管理]

 

C45.有一演算法如下

步驟一:從鍵盤輸入一數字鍵,

步驟二:若該輸入鍵不是09,則回步驟一重新輸入,

步驟三:將該輸入鍵的ASCII碼減掉48

下列有關此演算法之敘述,何者錯誤? (A)在步驟一輸入按鍵6,步驟三完成後會得到6 (B)步驟二可用IF敘述來實現 (C)在步驟一輸入按鍵A,步驟三完成後會得到10 (D)此演算法能將數字鍵轉成數值。[99管理]

 

A46.下列的時間複雜度表示式中,何者的時間複雜度最小? (A)O(n1000) (B)O(nlog(n)) (C)O((log(n))n) (D)O(10n)[99管理]

 

B47.若一個程式的執行時間為(4n2 + n * log(n) + log(n) + 4),則其最適合的時間複雜度表示方式為下列何者? (A)O(n * log(n)) (B)O(n2) (C)O(log(n)) (D)O(4)[99管理]

 

A48.假設有n筆資料,先以快速排序法(quick sort)將此n筆資料依序排列,再以二元搜尋法(binary search)搜尋此n筆資料中的一筆特定資料,則整個運算過程的時間複雜度為何? (A)O(n * log(n)) (B)O(n) (C)O(log(n)) (D)O(n2)[99管理]

 

A49.使用現有的軟體元件,以組合出所需要的軟體,這樣的軟體設計方法是屬於下列哪一種軟體設計方法? (A)由下而上設計方法(bottom-up design) (B)由上而下設計方法(top-down design) (C)引導式轉換方法(pilot conversion design) (D)平行式轉換方法(parallel conversion design)[99管理]

 

D50.下列何者不屬於結構化程式設計(Structured Programming)的結構? (A)連續(Concatenation) (B)選擇(Selection) (C)重複(Repetition) (D)遞迴(Recursive)[100電機]

 

D51.下列哪一項不是演算法的基本條件? (A)明確性 (B)有限性 (C)有效性 (D)重複性。[100管理]

 

A52.下列有關資料流程圖(DFD)功能的敘述,何者正確? (A)塑模資訊系統內的資料流程 (B)了解資料流程的時間 (C)顯示資訊系統內活動的順序 (D)了解資料的語意。[100管理]

 

A53.下列有關重複結構的敘述,何者錯誤? (A)前測重複(pre-test loop)最少執行一次 (B)前測重複最多執行無限次 (C)前測重複執行到條件不成立為止 (D)可以分為前測重複及後測重複(post-test loop)兩種。[100管理]

 

沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。