2015下半年計算機二級C++考試預測題
點擊查看試題答案及解析
一、選擇題,在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確的選項涂寫在答題卡相應位置上,答在試卷上不得分。
(1)算法的空間復雜度是指
A)算法程序的長度
B)算法程序中的指令條數
C)算法程序所占的存儲空間
D)執行過程中所需要的存儲空間
(2)用鏈表表示線性表的優點是
A)便于隨機存取
B)花費的存儲空間較順序存儲少
C)便于插入和刪除操作
D)數據元素的物理順序與邏輯順序相同
(3)數據結構中,與所使用的計算機無關的是數據的
A)存儲結構
B)物理結構
C)邏輯結構
D)物理和存儲結構
(4)結構化程序設計主要強調的是
A)程序的規模
B)程序的效率
C)程序設計語言的先進性
D)程序易讀性
(5)軟件設計包括軟件的結構、數據接口和過程設計,其中軟件的過程設計是指
A)模塊間的關系
B)系統結構部件轉換成軟件的過程描述
C)軟件層次結構
D)軟件開發過程
(6)檢查軟件產品是否符合需求定義的過程稱為
A)確認測試
B)集成測試
C)驗證測試
D)驗收測試
(7)數據流圖用于抽象描述一個軟件的邏輯模型,數據流圖由一些特定的圖符構成。下列圖符名標識的圖符不屬于數據流圖合法圖符的是
A)控制流
B)加工
C)數據存儲
D)源和潭
(8)應用數據庫的主要目的是
A)解決數據保密問題
B)解決數據完整性問題
C)解決數據共享問題
D)解決數據量大的問題
(9)在數據庫設計中,將E-R圖轉換成關系數據模型的過程屬于
A)需求分析階段
B)邏輯設計階段
C)概念設計階段
D)物理設計階段
(10)在數據管理技術的發展過程中,經歷了人工管理階段、文件系統階段和數據庫系統階段。其中數據獨立性最高的階段是
A)數據庫系統
B)文件系統
C)人工管理
D)數據項管理
(11)下面關于C++語言的描述錯誤的是
A)C++語言支持數據封裝
B)C++語言中引入友元沒有破壞封裝性
C)C++語言允許函數名和運算符重載
D)C++語言支持動態聯編
(12)設有定義int a=1;float f=1?2;char c=′a′;,則下列表示錯誤的是
A)++a;
B)f--;
C)c++;
D)8++;
(13)下列程序的運行結果為
#include
void main()
{
int a=2;
int b=a+1;
cout< }
A)0.66667
B)0
C)0.7
D)0.66666666
(14)設int a=1,b=2;,則(a++)+b和a+++b這兩個表達式的值分別為
A)3,3
B)3,4
C)4,3
D)4,4
(15)下面程序的運行結果為
#include
void main()
{
char a=′3′;
switch(a)
{
case ′3′: cout<<"3";
case ′2′: cout<<"2"; break;
default:cout<<"1";
}
}
A)3
B)321
C)31
D)32
(16)有如下數組聲明:int num[10];,下標值引用錯誤的是
A)num[10]
B)num[5]
C)num[3]
D)num[0]
(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];
(18)下面程序的運行結果為
#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);
cout< }
A)2,3
B)3,2
C)2,2
D)3,3
(19)一個函數功能不太復雜但要求被頻繁調用,應選用
A)內聯函數
B)重載函數
C)遞歸函數
D)嵌套函數
(20)下面關于C++語言變量的敘述錯誤的是
A)C++語言中變量分為auto,static,extern和register四種存儲類型
B)自動變量和外部變量的作用域為整個程序
C)內部靜態變量的作用域是定義它的函數
D)外部靜態變量的作用域是定義它的文件
(21)為了使類中的某個成員不能被類的對象通過成員操作符訪問,則不能把該成員的訪問權限定義為
A)public
B)protected
C)private
D)static
(22)在C++語言程序中,對象之間的相互通信通過
A)繼承實現
B)調用成員函數實現
C)封裝實現
D)函數重載實現
(23)類的析構函數是在什么時候調用的?
A)類創建時
B)創建對象時
C)刪除對象時
D)不自動調用
(24)通?截悩嬙旌瘮档膮凳
A)某個對象名
B)某個對象的成員名
C)某個對象的引用名
D)某個對象的指針名
(25)下面程序的運行結果為
#include
class A
{
static int n;
public:
A(){n=1;}
A(int num){n=num;}
void print(){cout< };
int A::n=2;
void main()
{
A a,b (3);
a.print();
b.print();
cout< }
A)11
B)13
C)23
D)33
(26)下列不是描述類的成員函數的是
A)構造函數
B)析構函數
C)友元函數
D)拷貝構造函數
(27)繼承機制的作用是
A)信息隱藏
B)數據封裝
C)定義新類
D)數據抽象
(28)C++語言類體系中,不能被派生類繼承的有
A)轉換函數
B)構造函數
C)虛函數
D)靜態成員函數
(29)下面程序的運行結果是
#include
class base{
protected:
int a;
public:
base(){cout<<"0";}
};
class base1:virtual base{
public:
base1(){cout<<"1";}
};
class base2:virtual base{
public:
base2(){cout<<"2";}
};
class derived:public base1,public base2{
public:
derived(){cout<<"3";}
};
void main()
{
derived obj;
cout< }
A)0123
B)3120
C)0312
D)3012
(30)對于類定義
class A{
public:
virtual void func1(){}
void func2(){}
};
class B:public A{
public:
void func1(){cout<<″class B func 1″< virtual void func2(){cout<<″class B func 2″< };
下面正確的敘述是
A) A::func2()和B::func1()都是虛函數
B) A::func2()和B::func1()都不是虛函數
C) B::func1()是虛函數,而A::func2()不是虛函數
D) B::func1()不是虛函數,而A::func2()是虛函數
(31)下面關于運算符重載的描述錯誤的是
A)運算符重載不能改變操作數的個數、運算符的優先級、運算符的結合性和運算符的語法結構
B)不是所有的運算符都可以進行重載
C)運算符函數的調用必須使用關鍵字operator
D)在C++語言中不可通過運算符重載創造出新的運算符
(32)與語句cout<
A)cout<<′\n′;
B)cout<<′\12′;
C)cout<<′\xA′;
D)cout<<′\0′;
(33)下面程序的運行結果是
#include
int fun(int a[],int n)
{
int result=1;
for(int i=1;i result=result*a[i];
return result;
}
void main()
{
int a[3]={3,4,5};
cout< }
A)12
B)15
C)20
D)60
(34)下面程序的運行結果是
#include
void main()
{
int i=1;
while(i<=8)
if (++i%3!=2)continue;
else cout< }
A)25
B)36
C)258
D)369
(35)下列程序的運行結果為
#include
template
class FF
{ TT a1, a2, a3;
public:
FF(TT b1, TT b2, TT b3){a1=b1; a2=b2; a3=b3;}
TT Sum(){return a1+a2+a3;}};
void main()
{ FF x(int(1.1),2,3),y(int(4.2),5,6);
cout< A)6.1 15.2
B)6 15
C)6 15.2
D)6.1 15
二、填空題。請將每一個空的正確答案寫在答題卡序號的橫線上,答在試卷上不給分。
(1)數據的邏輯結構有線性結構和 1 兩大類。
(2)順序存儲方法是把邏輯上相鄰的結點存儲在物理位置 2 的存儲單元中。
(3)一個類可以從直接或間接的祖先中繼承所有屬性和方法。采用這個方法提高了軟件的 3 。
(4)軟件工程研究的內容主要包括: 4 技術和軟件工程管理。
(5)關系操作的特點是 5 操作。
(6)C++中封裝性、繼承性和 6 是面向對象思想的主要特征。
(7)下面程序的結果為 7 。
#include
void main()
{
int a=1,b=2;
bool c=1;
if((a>b)||c)cout<<"true"< else
cout<<"false"< }
(8)下列for語句的循環次數為 8 。
for(int a=0,b=1;b&&a<5;a++);
(9)下面程序的輸出結果是 9 。
#include
void main()
{
int a[6]={1,2,3,4,5,6};
for(int i=0;i<5;i++)
cout< }
【下半年計算機二級C++考試預測題】相關文章:
2015下半年計算機二級C++考試預測題答案及解析08-31
2015下半年全國計算機二級C++預測題08-23
計算機二級考試MSOffice預測題10-08
2015下半年全國計算機二級C++預測題答案及解析09-04
2011下半年計算機二級C++考試真題09-12
2017計算機二級考試Access預測題10-30