全國計算機二級考試C++筆試模擬題及答案
在各領域中,我們經常接觸到考試題,借助考試題可以為主辦方提供考生某方面的知識或技能狀況的信息。大家知道什么樣的考試題才是規范的嗎?以下是小編精心整理的全國計算機二級考試C++筆試模擬題及答案,希望能夠幫助到大家。
全國計算機二級考試C++筆試模擬題及答案 1
一、選擇題
1.棧和隊列的共同特點是( )
A.都是先進先出
B.都是先進后出
C.只允許在端點處插入和刪除元素
D.沒有共同點
【答案】C
2.鏈表不具有的特點是( )
A.不必事先估計存儲空間
B.可隨機訪問任一元素
C.插入刪除不需要移動元素
D.所需空間與線性表長度成正比
【答案】B
3.為了提高測試的效率,應該( )
A.隨機選取測試數據
B.取一切可能的輸入數據作為測試數據
C.在完成編碼以后制定軟件的測試計劃
D.集中對付那些錯誤群集的程序
【答案】D
4.軟件生命周期中所花費用最多的階段是( )
A.詳細設計
B.軟件編碼
C.軟件測試
D.軟件維護
【答案】D
5.下列有關數據庫的描述,正確的是( )
A.數據庫是一個DBF文件
B.數據庫是一個關系
C.數據庫是一個結構化的數據集合
D.數據庫是一組文件
【答案】C
6.算法的空間復雜度是指( )
A.算法程序的長度
B.算法程序中的指令條數
C.算法程序所占的存儲空間
D.執行過程中所需要的存儲空間
【答案】D
7.數據結構中,與所使用的計算機無關的是數據的( )
A.存儲結構
B.物理結構
C.邏輯結構
D.物理和存儲結構
【答案】C
8.軟件設計包括軟件的結構、數據接口和過程設計,其中軟件的過程設計是指( )
A.模塊間的關系
B.系統結構部件轉換成軟件的過程描述
C.軟件層次結構
D.軟件開發過程
【答案】B
9.數據流圖用于抽象描述一個軟件的邏輯模型,數據流圖由一些特定的圖符構成。下列圖符名標識的圖符不屬于數據流圖合法圖符的是( )
A.控制流
B.加工
C.數據存儲
D.源和潭
【答案】A
10.在數據庫設計中,將E-R圖轉換成關系數據模型的過程屬于( )
A.需求分析階段
B.邏輯設計階段
C.概念設計階段
D.物理設計階段
【答案】B
11.以下C++語言中用于單行注釋的是( )
A.//
B./*
C.*/
D.|
【答案】A
12.若變量已正確定義并賦值,以下符合C++語言語法的表達式是( )
A.a:=b+1
B.a=b=c+2
C.int18.5%3
D.a=a+7=c+b
【答案】B
13.有以下程序
#include″iostream.h″
voidmain( )
{inti=1,j=1,k=2;
if((j++||k++)&&i++)
cout<
cout<
執行后輸出結果是( )
A.1,1,2
B.2,2,1
C.2,2,2
D.2,2,3
【答案】C
14.若有語句int*point,a=4;和point=&a;下面均代表地址的一組選項是( )
A.a,point,*&a
B.&*a,&a,*point
C.*&point,*point,&a
D.&a,&*point,point
【答案】D
15.若運行時給變量x輸入12,則以下程序的運行結果是( )
#include
voidmain( )
{
intx,y;
cin>>x;
y=x>12?x+10:x-12;
cout<
cout<
}
A.0
B.22
C.12
D.10
【答案】A
16.以下關于C++類的說法中正確的是( )
A.C++語言的默認訪問權限是private
B.C++語言中的類定義,用戶一定要自己定義一個構造函數用于實例化類
C.C++語言中的成員函數的實現部分一定要寫在類定義外
D.C++語言中的類不能夠嵌套定義
【答案】A
17.派生類對象對其基類中的什么成員是可訪問的?( )
A.公有繼承的私有成員
B.私有繼承的公有成員
C.私有繼承的保護成員
D.保護繼承的保護成員
【答案】D
18.下列關于運算符重載不正確的是( )
A.運算符重載不能改變運算符的操作數個數
B.運算符重載不能改變運算符的優先級
C.運算符重載不能改變運算符的結合性
D.運算符重載能改變對預定義類型數據的操作方式
【答案】D
19.對于重載的運算符>>,它是一個( )
A.用于輸入的友元函數
B.用于輸入的成員函數
C.用于輸出的友元函數
D.用于輸出的成員函數
【答案】A
20.若調用一個函數,且此函數中沒有return語句,則正確的說法是該函數( )
A.沒有返回值
B.返回若干個系統默認值
C.有返回值,但返回一個不確定的值
D.能返回一個用戶所希望的函數值
【答案】C
21.以下能對二維數組a進行正確初始化的語句是( )
A.inta[2][]={{1,0,1},{5,2,3}};
B.inta[][3]={{1,2,3},{4,5,6}};
C.inta[2][4]={{1,2,3},{4,5},{6}};
D.inta[][3]={{1,0,1},{},{1,1}};
【答案】B
22.有如下程序
#include
voidmain( )
{floatx=2.0,y;
if(x<0.0)y=0.0;
elseif(x<10.0)y=1.0/x;
elsey=1.0;
cout<
該程序的輸出結果是( )
A.0
B.0.25
C.0.5
D.1.0
【答案】C
23.C++中,表示一條語句結束的標號是( )
A.#
B.;
C.//
D.}
【答案】B
24.已知有定義
constintD=5;
inti=1;
doublef=0.32;
charc=15;
則下列選項錯誤的是( )
A.++i;
B.D--;
C.c++;
D.--f;
【答案】B
25.下面程序的功能是把316表示為兩個加數的和,使兩個加數分別能被13和11整除,在劃線處應填入的選項是( )
#include
voidmain( )
{inti=0,j,k;
do{i++;k=316-13*i;}while(___);
j=k/11;
cout<<″316=13*″<
A.k/11B.kC.k/11==0D.k=0
【答案】B
26.若已定義:
inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;
其中o≤i≤9,則對a數組不正確的引用是( )
A.a[p-a]
B.*(&a[i])
C.p[i]
D.a[10]
【答案】D
27.函數fun的.返回值是( )
fun(char*a,char*b)
{intnum=0,n=0;
while(*(a+num)!=′\0′)num++;
while(b[n]){*(a+num)=b[n];num++;n++;}
returnnum;}
A.字符串a的長度
B.字符串b的長度
C.字符串a和b的長度之差
D.字符串a和b的長度之和
【答案】D
28.下面程序的結果為( )
#include
intc;
classA{
private:
inta;
staticintb;
public:
A( ){a=0;c=0;}
voidseta( ){a++;}
voidsetb( ){b++;}
voidsetc( ){c++;}
voiddisplay( ){cout<
intA::b=0;
voidmain( )
{Aa1,a2;
a1.seta( );
a1.setb( );
a1.setc( );
a2.seta( );
a2.setb( );
a2.setc( );
a2.display( );}
A.121
B.122
C.112
D.222
【答案】B
29.下列關于構造函數說法不正確的是( )
A.構造函數必須與類同名
B.構造函數可以省略不寫
C.構造函數必須有返回值
D.在構造函數中可以對類中的成員進行初始化
【答案】C
30.在重載一個運算符時,如果其參數表中有一個參數,則說明該運算符是( )
A.一元成員運算符
B.二元成員運算符
C.一元友元運算符
D.選項B和選項C都可能
【答案】D
31.表示在輸出時顯示小數位,和在文件輸入時判斷文件尾的函數分別是( )
A.showbase( )和eof( )
B.showpoint( )和eof( )
C.showpoint( )和bad( )
D.showpoint( )和good( )
【答案】B
32.下列程序中畫線處應填入的語句是( )
classBase
{public:
voidfun( ){cout<<″Baseoffun″<
classDerived:publicBase
{
voidfun( )
{
____//顯示基類的成員函數fun
cout<<″Derivedoffun″<
}
};
A.fun( );
B.Base.fun( );
C.Base::fun( );
D.Base->fun( );
【答案】C
33.在位運算中,操作數每右移一位,其結果相當于( )
A.操作數乘以2
B.操作數除以2
C.操作數乘以4
D.操作數除以4
【答案】B
34.一個類的友元函數能夠訪問該類的( )
A.私有成員
B.保護成員
C.公有成員
D.所有成員
【答案】D
35.下面程序的輸出結果是( )
#include
#include
voidmain( )
{
charp1[10],p2[10];
strcpy(p1,″abc″);
strcpy(p2,″ABC″);
charstr[50]″xyz″;
strcpy(str+2,strcat(p1,p2));
cout<
}
A.xyzabcABC
B.zabcABC
C.xyabcABC
D.yzabcABC
【答案】C
二、填空題
1.算法的基本特征是可行性、確定性、【1】和擁有足夠的情報。
【答案】
【1】有窮性
2.在面向對象的程序設計中,類描述的是具有相似性質的一組【2】。
【答案】
【2】對象
3.數據庫管理系統常見的數據模型有層次模型、網狀模型和【3】3種。
【答案】
【3】關系模型
4.一個類可以從直接或間接的祖先中繼承所有屬性和方法。采用這個方法提高了軟件的【4】。
【答案】
【4】可重用性
5.關系操作的特點是【5】操作。
【答案】
【5】集合
6.C++語言中關鍵字運算符有new,和【6】。
【答案】
【6】sizeof
7.以下程序的輸出結果是【7】。
#include
classobject
{private:
intval;
public:
object( );
object(inti);
~object( );};
object::object( )
{val=0;
cout<<″Defaultconstructorforobject″<
object::object(inti)
{vali;
cout<<″Constructorforobject″<
object::~object( )
{cout<<″Destructorforobject″<
classcontainer{private:
objectone;
objecttwo;
intdata;
public:
container( );
container(inti,intj,intk);
~container( );};
container::container( )
{cata=0;
cout<<″Defaultconstructorforcontainer″<
container::container(inti,intj,intk):two(i),one(j)
{data=k;
cout<<″Constructorforcontainer″<
container::~container( )
{cout<<″Destructorforcontainer″<
voidmain( )
{containeranObj(5,6,10);}
【答案】
【7】Constructorforobject6
Constructorforobject5
Constructorforcontainer
Destruct
8.靜態成員函數可以直接訪問類的【8】成員,不能直接訪問類的【9】成員。
【答案】
【8】靜態【9】非靜態
9.表達式x.operator+(y.operator++(0))還可以寫成【10】。
【答案】
【10】x+y++或x+(y++)
10.在C++語言的結構化程序設計中,【11】是程序的基本組成單元;在C++語言的面向對象設計框架中,【12】是程序的基本組成單元。
【答案】
【11】函數【12】類
11.C++語言提供的基本控制結構可以分為3種類型:順序結構、【13】和循環結構。
【答案】
【13】選擇結構
12.C++語言的參數傳遞機制包括傳值和傳地址兩種,如果調用函數時,需要改變實參或者返回多個值,應該采取【14】方式。
【答案】
【14】傳地址
13.繼承的方式有公有繼承、私有繼承和【15】3種。
【答案】
【15】保護繼承
全國計算機二級考試C++筆試模擬題及答案 2
一、選擇題
算法的空間復雜度是指( )
A. 算法程序的長度
B. 算法程序中的指令條數
C. 算法程序所占的存儲空間
D. 執行過程中所需要的存儲空間
答案:D
用鏈表表示線性表的優點是( )
A. 便于隨機存取
B. 花費的存儲空間較順序存儲少
C. 便于插入和刪除操作
D. 數據元素的物理順序與邏輯順序相同
答案:C
數據結構中,與所使用的計算機無關的是數據的( )
A. 存儲結構
B. 物理結構
C. 邏輯結構
D. 物理和存儲結構
答案:C
結構化程序設計主要強調的是( )
A. 程序的規模
B. 程序的效率
C. 程序設計語言的先進性
D. 程序易讀性
答案:D
軟件設計包括軟件的結構、數據接口和過程設計,其中軟件的過程設計是指( )
A. 模塊間的關系
B. 系統結構部件轉換成軟件的'過程描述
C. 軟件層次結構
D. 軟件開發過程
答案:B
檢查軟件產品是否符合需求定義的過程稱為( )
A. 確認測試
B. 集成測試
C. 驗證測試
D. 驗收測試
答案:A
數據流圖用于抽象描述一個軟件的邏輯模型,數據流圖由一些特定的圖符構成。下列圖符名標識的圖符不屬于數據流圖合法圖符的是( )
A. 控制流
B. 加工
C. 數據存儲
D. 源和潭
答案:A
應用數據庫的主要目的是( )
A. 解決數據保密問題
B. 解決數據完整性問題
C. 解決數據共享問題
D. 解決數據量大的問題
答案:C
在數據庫設計中,將 E-R 圖轉換成關系數據模型的過程屬于( )
A. 需求分析階段
B. 邏輯設計階段
C. 概念設計階段
D. 物理設計階段
答案:B
在數據管理技術的發展過程中,經歷了人工管理階段、文件系統階段和數據庫系統階段。其中數據獨立性最高的階段是( )
A. 數據庫系統
B. 文件系統
C. 人工管理
D. 數據項管理
答案:A
下面關于 C++ 語言的描述錯誤的是( )
A. C++ 語言支持數據封裝。
B. C++ 語言中引入友元沒有破壞封裝性
C. C++ 語言允許函數名和運算符重載
D. C++ 語言支持動態聯編
答案:B
設有定義int a=1;float f=12;char c=a;,則下列表示錯誤的是( )
A. ++a;
B. f--;
C. c++;
D. 8++;
答案:D
下列程序的運行結果為( )
cpp
復制
#include
void main (){
int a=2;
int b=a+1;
std::cout << a/b << std::endl;
}
A. 0.66667
B. 0
C. 0.7
D. 0.66666666
答案:B
14. 設int a=1,b=2;,則(a++)+b和a+b這兩個表達式的值分別為( )
A. 3,3
B. 3,4
C. 4,3
D. 4,4
答案:C
15. 下面程序的運行結果為( )
cpp
復制
#include
void main(){
char a = 3;
switch(a){
case 3: std::cout << "3";
case 2: std::cout << "2"; break;
default:std::cout << "1";
}
}
A. 3
B. 321
C. 31
D. 32
答案:D
16. 有如下數組聲明:int num[10];,下標值引用錯誤的是( )
A. num[10]
B. num[5]
C. num[3]
D. num[0]
答案:A
17. 存在定義int a[10],x,*pa;,若pa=&a[0],下列的哪個選項和其他 3 個選項不是等價的?( )
A. x=pa;
B. x=(a+1);
C. x=*(pa+1);
D. x=a[1];
答案:A
18. 下面程序的運行結果為( )
cpp
復制
#include
void swap (int &a,int b){
int temp;
temp=a++;
a=b;
b=temp;
}
void main(){
int a=2,b=3;
swap (a,b);
std::cout << a << "," << b << std::endl;
}
A. 2,3
B. 3,2
C. 2,2
D. 3,3
答案:D
19. 一個函數功能不太復雜但要求被頻繁調用,應選用( )
A. 內聯函數
B. 重載函數
C. 遞歸函數
D. 嵌套函數
答案:A
20. 下面關于 C++ 語言變量的敘述錯誤的是( )
A. C++ 語言中變量分為 auto,static,extern 和 register 四種存儲類型
B. 自動變量和外部變量的作用域為整個程序
C. 內部靜態變量的作用域是定義它的函數
D. 外部靜態變量的作用域是定義它的文件
答案:B
二、填空題
面向對象的程序設計方法中涉及的對象是系統中用來描述客觀事物的一個______。
答案:實體
軟件結構是以______為基礎而組成的一種控制層次結構。
答案:模塊
數據庫系統的三級模式分別為______模式、內部級模式與外部級模式。
答案:概念
在最壞情況下,冒泡排序的時間復雜度為______。
答案:
在 C++ 語言中,一個函數一般由兩個部分組成,分別是______和函數體。
答案:函數首部
【全國計算機二級考試C++筆試模擬題及答案】相關文章:
2015年9月全國計算機二級考試C++筆試模擬題及答案(三)07-31
2015年9月全國計算機二級考試C++筆試模擬題及答案(四)11-09
2015年9月全國計算機二級考試C++筆試模擬題及答案(五)10-22
2015年9月全國計算機二級考試C++筆試模擬題及答案(六)07-04
全國計算機二級考試《C++》筆試樣卷06-12
全國計算機等級考試二級C++筆試題08-24
全國計算機二級考試C++精選試題及答案08-17
全國計算機等級考試二級C++筆試真題10-11