2018年12月計算機二級考試在即,為了便于考生的復習及知識的鞏固,今天為各位考生整理了2018年12月計算機二級C++考前沖刺模擬題及答案,歡迎各位考生的關注,更多計算機二級考試的資訊,敬請關注的更新。

1.下列敘述中正確的是( )。
A.棧是“先進先出”的線性表
B.隊列是“先進后出”的線性表
C.循環(huán)隊列是非線性結構
D.有序線性表既可以采用順序存儲結構,也可以采用鏈式存儲結構
2.支持子程序調用的數據結構是( )。
A.棧
B.樹
C.隊列
D.二叉樹
3.某二叉樹有5個度為2的結點,則該二叉樹中的葉子結點數是( )。
A.10
B.8
C.6
D.4
4.下列排序方法中,壞情況下比較次數少的是( )。
A.冒泡排序
B.簡單選擇排序
C.直接插入排序
D.堆排序
5.軟件按功能可以分為應用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下列屬于應用軟件的是( )。
A.編譯程序
B.操作系統(tǒng)
C.教務管理系統(tǒng)
D.匯編程序
6.下列敘述中錯誤的是( )。
A.軟件測試的目的是發(fā)現錯誤并改正錯誤
B.對被調試的程序進行“錯誤定位”是程序調試的必要步驟
C.程序調試通常也稱為Debug
D.軟件測試應嚴格執(zhí)行測試計劃。排除測試的隨意性
7.耦合性和內聚性是對模塊獨或性度量的兩個標準。下列敘述中正確的是( )。
A.提高耦合性降低內聚性有利于提高模塊的獨立性
B.降低耦合性提高內聚性有利于提高模塊的獨立性
C.耦合性是指一個模塊內部各個元素間彼此結合的緊密程度
D.內聚性是指模塊間互相連接的緊密程度
8.數據庫應用系統(tǒng)中的核心問題是( )。
A.數據庫設計
B.數據庫系統(tǒng)設計
C.數據庫維護
D.數據庫管理員培訓
9.有下列程序:
#include
voidmain( )
{char*s={"ABC");
do
{printf("%d",*s);s++;
}while(*s);
}
注意:字母A的ASCIl碼值為65。程序運行后的輸出結果是( )。
A.5670
B.656667
C.567
D.ABC
10.將E—R圖轉換為關系模式時,實體和聯系都可以表示為( )。
A.屬性
B.鍵
C.關系
D.域
11.下列選項合法的標識符是( )。
A.1_1
B.1-j
C._11
D.1__
12.若函數中有定義語句“intk;”.則( )。
A.系統(tǒng)將自動給k賦初值0
B.這時k中的值無定義
C.系統(tǒng)將自動給k賦初值-l
D.這時k中無任何值
13.下列選項中,能用作數據常量的是( )。
A.o115
B.o118
C.1.5e1.5
D.115L
14.設有定義“intx=2;”,下列表達式中,值不為6的是( )。
A.X*=x+1
B.x++,2*x
C.x*=(1+x)
D.2*x,x+=2
15.程序段“intx=12;doubley=3.141593;printf(”%d%8.6’f",X,y);”的輸出結果是( )。
A.123.141593
B.123.141593
C.12,3.141593
D.123.1415930
16.若有定義語句“doublex,y,*px,*Py;執(zhí)行了px=&x;py=&y;”后,正確的輸入語句是( )。
A.scanf("%f%f",x,y);
B.scanf("%f%f"&x,&y);
C.scanf("%If%le",px,py);
D.scanf("%lf%If"x,y);
17.下列是if語句的基本形式:
if(表達式)語句
其中“表達式”( )。
A.必須是邏輯表達式
B.必須是關系表達式
C.必須是邏輯表達式或關系表達式
D.可以是任意合法的表達式
18.有下列程序:
#include
voidmain( )
{intx;
scanf(”%d”,&x);
if(x<=3);else
if(x!=10)printf("%d\n",x);}
程序運行時,輸入的值在哪個范圍才會有輸出結果( )。
A.不等于10的整數
B.大于3且不等10的整數
C.大于3或等于10的整數
D.小于3的整數
19.有下列程序:
#include
voidmain()
{inta=1,b=2,c=3,d=0;
if(a==1&&b++==2)
if(b!=2‖c--!=3)
printf("%d,%d,%d\n",a,b,c);
elseprintf("%d,%d,%d\n",a,b,c);
elseprintf("%d,%d,%d,%d\n",a,b,c);}
程序運行后的輸出結果是( )。
A.1,2,3
B.1,3,2
C.1,3,3
D.3,2,1
20.下列程序段中的變量已正確定義:
for(i=0;i<4;i++,i++)
for(k=1;k<3;k++);printf("*");
程序段的輸出結果是( )。
A.********
B.****
C.**
D.*
參考解析:
1.D?!窘馕觥勘绢}考查了棧、隊列、循環(huán)隊列的基本概念。棧的特點是先進后出;隊列的特點是先進先出。根據數據結構中各數據元素之間的復雜程度,數據結構分線性結構與非線性結構兩類。有序線性表即可采用順序存儲結構,也可以采用鏈式存儲結構。
2.A?!窘馕觥扛鶕5亩x,棧是一種限定在一端進行插入與刪除的線性表。在主函數調用子函數時,主函數會保持當前狀態(tài),然后轉去執(zhí)行子函數,把子函數的運行結果返回到主函數,主函數繼續(xù)向下執(zhí)行,這種過程符合棧的特點。所以一般采用棧式存儲方式。
3.C?!窘馕觥扛鶕鏄涞男再|判定,在任意二叉樹中,度為0的葉子結點總是比度為2的結點多一個。
4.D?!窘馕觥勘绢}考查排序的比較次數,冒泡排序、簡單選擇排序和直接插入排序在壞的情況下比較次數為n(n-1)/2。而堆排序法在壞的情況下需要比較的次數為O(nlog2n)。
5.C。【解析】編譯程序和匯編程序縭于開發(fā)工具;操作系統(tǒng)屬于系統(tǒng)軟件;而教務管理系統(tǒng)屬于應用軟件。
6.A。【解析】軟件測試的目的是為了發(fā)現錯誤及漏洞而執(zhí)行程序的過程;軟件測試要嚴格執(zhí)行測試計劃;程序調試通常也稱Debug,對被調試的程序進行“錯誤”定位是程序調試的必要步驟。
7.B?!窘馕觥狂詈鲜侵改K間相互連接的緊密程度,內聚性是指在一個模塊內部各個元素彼此之間接合的緊密程序。高內聚、低耦合有利于模塊的獨立性。
8.A?!窘馕觥繑祿煸O計的目的是設計一個能滿足用戶要求、性能良好的數據庫。所以數據庫設計是數據庫應用的核心。
9.C?!窘馕觥勘绢}考查d0…while語句,至少執(zhí)行循環(huán)體,依次輸出ABC,這三個字母的ASCIl值對10求模的余數,字母A的ASCIl值對10求模的余數為5,字母B的ASCIl值對10求模的余數為6,字母c的ASCIl值對10求模的余數為7。所以正確答案為選項C。
10.C?!窘馕觥吭贑語言中,將E—R圖轉換為關系模式時,實體和聯系都可以表示為關系。
11.C?!窘馕觥緾語言中標識符命中的規(guī)則是:標識符只能由字母、數字和下畫線組成,第一個字符必須為字母或下畫線。所以選項C正確。
12.B。【解析】根據題目,若以這種方式定義變量k時,編譯程序僅為k開辟存儲單元,并未在存儲單元中存放任何初始值,所以變量中的值無意義,稱變量值“無定義”。所以正確答案為選項B。
13.D?!窘馕觥窟x項A的第一個字母是O而不是數字0,所以不構成數值常量;選項B中,8不是八進制數字,八進制數為0到7;選項C中字母“e”后面的指數是小數而非整數,不合法,不是一個合法的指數形式的數值常量;在選項D中,可以在整型常量的后面加一個字母L,表示這個常量在內存中占4字節(jié)。
14.D?!窘馕觥勘绢}考查了復合運算符“=”和逗號表達式如何正確求值。逗號表達式的作用是用逗號將表達武連起來,其有效值為后一個表達式的值,其運算的結合性從左到右進行運算。選項D是一個逗號表達式,其值為4。
15.A?!窘馕觥扛鶕敵龊瘮祊rintf中對輸出數值格式的要求,第一個數和第二數之間沒有空格或分隔號,因而此題答案為選項A。
16.C?!窘馕觥看祟}主要考查輸入函數的字符格式,lf和le表示以帶小數點的數學形式或指數形式輸入浮點數。
17.D?!窘馕觥吭贑語言中if關鍵字后的一對圓括號中的表達式可以是c語言中任意合法的表達式。
18.B?!窘馕觥吭诒绢}的程序中輸入的數值小于等于3時,不進行任何處理。如果輸入的數值大于3并且其值不等于10時,則打印輸入的數值。所以本題的正確答案為選項B。
19.C。【解析】在程序中,當執(zhí)行第一條if語句時,進行邏輯語句的判斷,因為變量b的初值為2,所以其值加1后為3,與2不相等,所以if語句中的邏輯表達式的值為假,則程序執(zhí)行后一條elseprintf語句。輸出變量為a,b,c,當前數值為1,3,3。所以正確答案為選項C。
20.D。【解析】本題中第二個for循環(huán)語句的后面有一個分號,所以兩個for循環(huán)語句的執(zhí)行語句為空。當兩個for循環(huán)語句執(zhí)行完后,再執(zhí)行printf語句輸出一個星號。所以正確答案為選項D。

