計算機二級考試C語言基礎測試題
在備考計算機二級過程中,同學們要多做試題鞏固知識,下面是小編分享的計算機二級考試C語言基礎測試題,一起來看一下吧。
1). 以下選項中不合法的標識符是( )
B.&a
t
D._00
正確答案:B
答案解析:合法的標識符要滿足組成字符為a~z以及A~Z,數字字符0到9和下劃線,其中數字不開頭,不能是關鍵字。選項B中,&不屬於組成字符,是錯誤的。
2). 下列描述中正確的是( )
A.程序就是軟件
B.軟件開發不受計算機系統的限制
C.軟件既是邏輯實體,又是物理實體
D.軟件是程序、數據與相關文檔的集合
正確答案:D
答案解析:計算機軟件與硬件是計算機系統中相互依存的兩部分。計算機軟件是包括程序、數據及相關文檔的完整集合。軟件由兩部分組成:一部分是機器可執行的程序和數據;二是機器不可執行的,與軟件開發、運行、維護、使用等有關的文檔。軟件具有以下六個特點:①軟件是一種邏輯實體,而不是物理實體,具有抽象性。②軟件的生產與硬件不同,它沒有明顯的製作過程。③軟件在運行、使用期間不存在磨損、老化問題。④軟件的開發、運行對計算機系統具有依賴性,受計算機系統的限制,這導致了軟件移值的問題。⑤軟件複雜性高,成本昂貴。⑥軟件的開發涉及諸多社會因素。
3). 變量a中的數據用二進制表示的形式是01011101,變量b中的數據用二進制表示的形式是11110000。若要求將a的高4位取反,低4位不變,所要執行的運算是
A.a^b
B.a|b
C.a&b
D.a<<4
正確答案:A
答案解析:本題考查的是位運算的知識,對於任何二進制數,和1進行異或運算會讓其取反,而和0進行異或運算不會產生任何變化,故本題選A。
4). 下列關於棧敍述正確的是( )
A.棧頂元素最先能被刪除
B.棧頂元素最後才能被刪除
C.棧底元素永遠不能被刪除
D.以上三種説法都不對
正確答案:A
答案解析:棧是先進後出的線性表,棧頂的元素最先被刪除,棧底的元素最後被刪除。
5). 已知 int a=1,b=3則a^b的值為
A.3
B.1
C.2
D.4
正確答案:C
答案解析:^是按位異或運算,如果對應位不同則結果為1,相同則為0。
6). 按條件f對關係R進行選擇,其關係代數表達式為( )
A.R|X|R
B.R|X|Rf
C.бf(R)
D.∏f(R)
正確答案:C
7). 信息隱蔽的概念與下述哪一種概念直接相關( )
A.軟件結構定義
B.模塊獨立性
C.模塊類型劃分
D.模擬耦合度
正確答案:B
8). 對於循環隊列,下列敍述中正確的是( )
A.隊頭指針是固定不變的
B.隊頭指針一定大於隊尾指針
C.隊頭指針一定小於隊尾指針
D.隊頭指針可以大於隊尾指針,也可以小於隊尾指針
正確答案:D
答案解析:所謂循環隊列,就是將隊列存儲空間的最後一個位置繞到第一個位置,形成邏輯上的環狀空間,供隊列循環使用。在循環隊列中,用隊尾指針rear指向隊列中的隊尾元素,用隊頭指針front指向隊頭元素的前一個位置。循環隊列的主要操作是:入隊運算和退隊運算。每進行一次入隊運算,隊尾指針就進一。每進行一次退隊運算,隊頭指針就進一。當rear或front等於隊列的長度加1時,就把rear或front值置為1。所以在循環隊列中,隊頭指針可以大於隊尾指針,也可以小於隊尾指針。
9). 設有定義: char p[]={′1′, ′2′, ′3′},*q=p; 以下不能計算出一個char型數據所佔字節數的表達式是( )
of(p)
of(char)
of(*q)
of(p[0])
正確答案:A
答案解析:選項A計算的是p[ ]字符數組首地址所佔的內存字節數,返回值數組中所有元素佔有的空間。*q和p[0]分別表示數組p中下標為0的字符元素,選項B和D都可以計算char型數據佔有的字節數。
10). 以下敍述中正確的是( )
A.打開一個已存在的文件並進行了寫操作後,原有文件中的全部數據必定被覆蓋
B.在一個程序中當對文件進行了寫操作後,必須先關閉該文件然後再打開,才能讀到第1個數據
C.C語言中的文件是流式文件,因此只能順序存取數據
D.當對文件的讀(寫)操作完成之後,必須將它關閉,否則可能導致數據丟失
正確答案:D
答案解析:在C語言中,有兩種對文件的存取方式;順序存取和直接存取;如果以″a″的方式對一個已打開的文件進行寫操作後,則原有文件中內容將保存,新的數據寫在原有內容之後。如果以″a+″的方式為讀和寫而打開一個文件,則既可以對文件進行讀,也可以對文件進行寫,而且在讀和寫操作之間不必關閉文件,可以從頭開始讀。當對文件的讀(寫)操作完成之後,必須將它關閉。
11). 若變量均已正確定義並賦值,以下合法的C語言賦值語句是( )。
A.x=y==5;
B.x=n%2.5;
C.x+n=I;
D.x=5=4+1;
正確答案:A
答案解析:選項A的含義是把關係表達式y==5的值賦給變量x。所以這是一條正確的賦值語句。因為賦值運算符左側的操作數必須是一個變量,而不能是表達式或者常量,所以選項C和D是錯誤的。因為求餘運算符″%″兩側的運算對象都應當是整型數據,所以選項B是錯誤的。
12). 下列數據結構中,屬於非線性結構的`是( )
A.循環隊列
B.帶鏈隊列
C.二叉樹
D.帶鏈棧
正確答案:C
答案解析:根據數據結構中各數據元素之間的前後件關係的複雜程度,一般將數據結構分為兩大類:線性結構和非線性結構。循環隊列、帶鏈隊列和帶鏈棧都是線性結構,而二叉樹是非線性結構。
13). 下列敍述中正確的是( )
A.一個算法的空間複雜度大,則其時間複雜度也必定大
B.一個算法的空間複雜度大,則其時間複雜度必定小
C.一個算法的時間複雜度大,則其空間複雜度必定小
D.算法的時間複雜度與空間複雜度沒有直接關係
正確答案:D
答案解析:算法的複雜度主要包括時間複雜度和空間複雜度。算法的時間複雜度是指執行算法所需要的計算工作量,算法的工作量用算法所執行的基本運算次數來度量,而算法所執行的基本運算次數是問題規模的函數,即算法的工作量=f(n),其中n是問題的規模;算法的空間複雜度,一般是指執行這個算法所需要的內存空間。一個算法所佔用的存儲空間包括算法程序所佔用的空間、輸入的初始數據所佔的存儲空間以及算法執行過程中所需要的額外空間。根據各自的定義可知,算法的時間複雜度與空間複雜度並不相關。
14). 下列描述中正確的是( )
A.程序就是軟件
B.軟件開發不受計算機系統的限制
C.軟件既是邏輯實體,又是物理實體
D.軟件是程序、數據與相關文檔的集合
正確答案:D
答案解析:計算機軟件與硬件是計算機系統中相互依存的兩部分。計算機軟件是包括程序、數據及相關文檔的完整集合。軟件由兩部分組成:一部分是機器可執行的程序和數據;二是機器不可執行的,與軟件開發、運行、維護、使用等有關的文檔。軟件具有以下六個特點:①軟件是一種邏輯實體,而不是物理實體,具有抽象性。②軟件的生產與硬件不同,它沒有明顯的製作過程。③軟件在運行、使用期間不存在磨損、老化問題。④軟件的開發、運行對計算機系統具有依賴性,受計算機系統的限制,這導致了軟件移值的問題。⑤軟件複雜性高,成本昂貴。⑥軟件的開發涉及諸多社會因素。