算法分析與設(shè)計2022年春學(xué)期在線作業(yè)1題目
試卷總分:100 得分:100
一、單選題 (共 20 道試題,共 40 分)
1.按F5開始調(diào)試,程序便會直接運(yùn)行到斷點(diǎn)處。接下來可以逐行來運(yùn)行程序,查看各個變量的值,也可以直接運(yùn)行到下一個斷點(diǎn)或程序結(jié)束,這樣過程被稱作()。
A.設(shè)置斷點(diǎn)
B.單步調(diào)試
C.程序編譯
D.程序調(diào)試
2.()主要是用來顯示當(dāng)前目錄的名稱或更改當(dāng)前的目錄。
A.dir
B.cd
C.type
D.fc
3.輸出一個字符串時使用()格式符。
A.%c
B.%s
C.%d
D.%e
4.動態(tài)規(guī)劃是一種在數(shù)學(xué)和計算機(jī)科學(xué)中使用的,用于求解包含()的最優(yōu)化問題的方法。
A.重疊子問題
B.相似子問題
C.互斥子問題
D.有序子問題
5.如何一步步的跟蹤代碼,找到問題,搞明白為何程序不能正常運(yùn)行,這個過程稱為()。
A.編寫程序
B.調(diào)試程序
C.執(zhí)行程序
D.編譯程序
6.對于循環(huán)隊(duì)列,下列敘述中正確的是( )
A.隊(duì)頭指針是固定不變的
B.隊(duì)頭指針一定大于隊(duì)尾指針
C.隊(duì)頭指針一定小于隊(duì)尾指針
D.隊(duì)頭指針可以大于隊(duì)尾指針,也可以小于隊(duì)尾指針
7.下列對隊(duì)列的敘述正確的是()。
A.隊(duì)列屬于非線性表
B.隊(duì)列按“先進(jìn)后出”原則組織數(shù)據(jù)
C.隊(duì)列在隊(duì)尾刪除數(shù)據(jù)
D.隊(duì)列按“先進(jìn)先出”原則組織數(shù)據(jù)
8.以C語言為例,下列四個選項(xiàng)中,均是不合法的用戶標(biāo)識符的是()。
A.BA、x_0、do
B.float、1a0、_Y
C.x-y、goto、123
D._123、tmp、CHAR
9.()命令用來顯示ASCII碼文件的內(nèi)容。
A.dir
B.cd
C.type
D.fc
10.下列排序算法中,其中()是穩(wěn)定的。
A.堆排序,冒泡排序
B.快速排序,堆排序
C.直接選擇排序,歸并排序
D.歸并排序,冒泡排序
11.strlen(str)是用來()。
A.求字符串長度
B.比較字符
C.求子串
D.字符串拷貝
12.批處理,也稱為批處理腳本,其文件擴(kuò)展名為()。
A..bat
B..exe
C..txt
D..c
13.十六進(jìn)制的213,1的位權(quán)是()。
A.0
B.1
C.8
D.16
14.數(shù)制中表示基本數(shù)值大小的不同數(shù)字符號稱為()。
A.進(jìn)制
B.基數(shù)
C.位權(quán)
D.數(shù)碼
15.變量名=屬性 + 類型 + 對象描述,其中每個對象的名稱都要有明確含義,可以取對象的名字全稱或名字的一部分,這種命名規(guī)則是()。
A.匈牙利命名法
B.駱駝命名法
C.下劃線命名法
D.帕斯卡命名法
16.isupper()函數(shù)用來()。
A.判斷字母
B.判斷數(shù)字
C.判斷大寫
D.判斷小寫
17.在下列排序算法中,哪一個算法的時間復(fù)雜度與初始排序無關(guān)()。
A.直接插入排序
B.冒泡排序
C.快速排序
D.直接選擇排序
18.下列敘述中正確的是( )
A.數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)必定是一一對應(yīng)的
B.由于計算機(jī)在存儲空間上是向量式的存儲結(jié)構(gòu),因此,利用數(shù)組只能處理線性結(jié)構(gòu)
C.程序設(shè)計語言中的數(shù)組一般是順序存儲結(jié)構(gòu),因此,利用數(shù)組只能處理線性結(jié)構(gòu)
D.以上說法都不對
19.順序查找n個元素的順序表,若查找成功,則比較關(guān)鍵字的次數(shù)最多為()次。
A.n/2
B.(n+1)/2
C.(n-1)/2
D.n
20.十進(jìn)制的基數(shù)是()。
A.2
B.8
C.10
D.16
二、多選題 (共 4 道試題,共 16 分)
21.字符串有關(guān)的格式字符有( )。
A."%c"
B."%d"
C."%f"
D."%s"
22.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)三種結(jié)構(gòu)共同特點(diǎn)是()
A.只有一個入口
B.只有一個出口
C.結(jié)構(gòu)內(nèi)的每一部分都有機(jī)會被執(zhí)行到(不存在死語句)
D.結(jié)構(gòu)內(nèi)不存在死循環(huán)(永遠(yuǎn)執(zhí)行不完的循環(huán))。
23.設(shè)計遞歸算法有兩點(diǎn)最為關(guān)鍵()和()。
A.確定遞推公式
B.確定邊界(終了)條件(遞歸出口)
C.每次遞歸調(diào)用,都必須向基本條件前進(jìn)
D.如果結(jié)果已知,那么,不用再重復(fù)調(diào)用遞歸
24.遞歸算法的執(zhí)行過程分()和()兩個階段。
A.遞歸
B.遞推
C.回歸
D.回溯
三、判斷題 (共 22 道試題,共 44 分)
25.插入排序是一種穩(wěn)定排序方法。
26.字符數(shù)組可用字符串來初始化。
27.C語言允許對數(shù)組的大小作動態(tài)定義,即定義行中的數(shù)組長度能包括變量。
28.窮舉法,也稱輾轉(zhuǎn)法,是一種針對于密碼的破譯方法,即將密碼進(jìn)行逐個推算直到找出真正的密碼為止。
29.插入排序的時間復(fù)雜度為O(n)。
30.在程序中關(guān)鍵字和變量名之間不需要加空格。
31.float b[4][5];定義b為5×6(5行6列)的數(shù)組。
32.遞推就是在函數(shù)里調(diào)用自身。
33.假如用一個長度為50的數(shù)組(數(shù)組元素的下標(biāo)從0到49)作為棧的存儲空間,棧底指針bottom指向棧底元素,棧頂指針top指向棧頂元素,如果bottom=49,top=30(數(shù)組下標(biāo)),則棧中具有19個元素。
34.在遞歸算法所體現(xiàn)的“重復(fù)”中要求每次調(diào)用在規(guī)模上都有所縮小。
35.字符串"Hello"與字符串"hello"相等。
36.字符數(shù)組的初始化可以逐個元素進(jìn)行初始化。
37.strncmp()函數(shù)和stricmp()函數(shù)相同。
38.順序查找法適合于存儲結(jié)構(gòu)為散列存儲的線性表
39.排序的穩(wěn)定性是指排序算法中的比較次數(shù)保持不變,且算法能夠終止。
40.長度不同的字符串一定不會相等。
41.求n的階乘的表示方法n!=n*(n-1)! ,其中0!=1,對應(yīng)的是遞歸的思想。
42.C程序執(zhí)行的入口是main()函數(shù),所以main函數(shù)必須放在程序的開頭。
43.對于二分查找,表必須有序,表可以順序方式存儲,也可以鏈表方式存儲。
44.兩個字符串中的字符個數(shù)相同時才能進(jìn)行字符串大小的比較。
45.歸并排序輔助存儲為O(1)。
46.在任何情況下,順序表中進(jìn)行結(jié)點(diǎn)的插入操作時都不需要移動結(jié)點(diǎn)。