- 相關推薦
2015年9月全國計算機二級C++預測題
點擊查看試題答案及解析
一、選擇題。在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確的選項涂寫在答題卡相應位置上,答在試卷上不得分。
(1)已知一棵二叉樹前序遍歷和中序遍歷分別為ABDEGCFH和DBGEACHF,則該二叉樹的后序遍歷為
A)GEDHFBCA
B)DGEBHFCA
C)ABCDEFGH
D)ACBFEDHG
(2)樹是結點的集合,它的根結點數目是
A)有且只有1
B)1或多于1
C)0或1
D)至少2
(3)如果進棧序列為e1,e2,e3,e4,則可能的出棧序列是
A)e3,e1,e4,e2
B)e2,e4,e3,e1
C)e3,e4,e1,e2
D)任意順序
(4)在設計程序時,應采納的原則之一是
A)不限制goto語句的使用
B)減少或取消注解行
C)程序越短越好
D)程序結構應有助于讀者理解
(5)程序設計語言的基本成分是數據成分、運算成分、控制成分和
A)對象成分
B)變量成分
C)語句成分
D)傳輸成分
(6)下列敘述中,不屬于軟件需求規(guī)格說明書的作用的是
A)便于用戶、開發(fā)人員進行理解和交流
B)反映出用戶問題的結構,可以作為軟件開發(fā)工作的基礎和依據
C)作為確認測試和驗收的依據
D)便于開發(fā)人員進行需求分析
(7)下列不屬于軟件工程的3個要素的是
A)工具
B)過程
C)方法
D)環(huán)境
(8)單個用戶使用的數據視圖的描述稱為
A)外模式
B)概念模式
C)內模式
D)存儲模式
(9)將E-R圖轉換到關系模式時,實體與聯系都可以表示成
A)屬性
B)關系
C)鍵
D)域
(10)SQL語言又稱為
A)結構化定義語言
B)結構化控制語言
C)結構化查詢語言
D)結構化操縱語言
(11)下面關于類和對象的描述中,錯誤的是
A)類就是C語言中的結構體類型,對象就是C語言中的結構體變量
B)類和對象之間的關系是抽象和具體的關系
C)對象是類的實例,一個對象必須屬于一個已知的類
D)類是具有共同行為的若干對象的統(tǒng)一描述體
(12)以下各選項組中,均是C++語言關鍵字的組是
A)public operator this
B)shod string static
C)it while >=
D)private cout printf
(13)設int a=10,b=11,c=12;,表達式(a+b)
A)2
B)0
C)-2
D)1
(14)下列描述正確的是
A)表示m>n為true或mn&&m
B)switch語句結構中必須有default語句
C)if語句結構中必須有else語句
D)如果至少有一個操作數為true,則包含"||"運算符的表達式為true
(15)下列語句中不是死循環(huán)的是
A)int i=10;
while (1)
{
i--;
if(i==1)break;
}
B)for(int i=1;i<10;i++)
{
i--;
}
C)int i=0;
do{
i++;
}while(i>=0);
D)int i=1;
for(;;)i=i+1;
(16)下面關于break語句的描述中,不正確的是
A)break可以用于循環(huán)體內
B)break語句可以在for循環(huán)語句中出現多次
C)break語句可以在switch語句中出現多次
D)break語句可用于if條件判斷語句內
(17)下面關于數組的描述錯誤的是
A)在C++語言中數組的名字就是指向該數組第一個元素的指針
B)長度為n的數組,下標的范圍是0~n-1
C)數組的大小必須在編譯時確定
D)數組只能通過值參數和引用參數兩種方式傳遞給函數
(18)下面程序錯誤的語句是
、 #include
② void main()
、 {
、 int *p=new int[1];
⑤ p=9;
、 cout <<*p< 、 delete []p;
、 }
A)④
B)⑤
C)⑥
D)⑦
(19)下面的哪個選項不能作為函數的返回類型?
A)void
B)int
C)new
D)long
(20)不能作為重載函數的調用的依據是
A)參數個數
B)參數類型
C)函數類型
D)函數名稱
點擊查看試題答案及解析
(21)下列程序的輸出結果為
#include
int func(int n)
{
if (n<1)return 1;
else return n+func(n-1);
return 0;
}
void main()
{
cout< }
A)0
B)10
C)15
D)16
(22)在C++語言中,數據封裝要解決的問題是
A)數據的規(guī)范化
B)便于數據轉換
C)避免數據丟失
D)防止不同模塊之間數據的非法訪問
(24)對類的構造函數和析構函數描述正確的是
A)構造函數可以重載,析構函數不能重載
B)構造函數不能重載,析構函數可以重載
C)構造函數可以重載,析構函數也可以重載
D)構造函數不能重載,析構函數也不能重載
(25)下面程序的運行結果為
#include
class A
{
int num;
public:
A(int i){num=i;}
A(A &a){num=a.num++;}
void print(){cout< };
void main()
{
A a (1),b(a);
a.print();
b.print();
}
A)11
B)12
C)21
D)22
(26)下面對靜態(tài)數據成員的描述中,正確的是
A)靜態(tài)數據成員是類的所有對象共享的數據
B)類的每個對象都有自己的靜態(tài)數據成員
C)類的不同對象有不同的靜態(tài)數據成員值
D)靜態(tài)數據成員不能通過類的對象調用
(27)如果類A被說明成類B的友元,則
A)類A的成員即類B的成員
B)類B的成員即類A的成員
C)類A的成員函數不得訪問類B的成員
D)類B不一定是類A的友元
(28)可以用p.a的形式訪問派生類對象p的基類成員a,其中a是
A)私有繼承的公有成員
B)公有繼承的私有成員
C)公有繼承的保護成員
D)公有繼承的公有成員
(29)建立派生類對象時,3種構造函數分別是a(基類的構造函數)、b(成員對象的構造函數)、c(派生類的構造函數)這3種構造函數的調用順序為
A)abc
B)acb
C)cab
D)cba
(30)下面關于虛函數的描述,錯誤的是
A)在成員函數聲明的前面加上virtual修飾,就可把該函數聲明為虛函數
B)基類中說明了虛函數后,派生類中對應的函數也必須說明為虛函數
C)虛函數可以是另一個類的友元函數,但不能是靜態(tài)成員函數
D)基類中說明的純虛函數在其任何派生類中都必須實現
(31)下面關于模板的描述,錯誤的是
A)函數模板和類模板的參數可以是任意的數據類型
B)類模板不能直接使用,必須先實例化為相應的模板類,然后定義了模板類的對象后才能使用
C)函數模板不能直接使用,需要實例化為模板函數后才能使用
D)類模板的成員函數都是模板函數
(32)語句ofstream f("SALARY.DAT",ios::app|ios::binary);的功能是建立流對象f,試圖打開文件SALARY.DAT并與之連接,并且
A)若文件存在,將文件寫指針定位于文件尾;若文件不存在,建立一個新文件
B)若文件存在,將其置為空文件;若文件不存在,打開失敗
C)若文件存在,將文件寫指針定位于文件首;若文件不存在,建立一個新文件
D)若文件存在,打開失敗;若文件不存在,建立一個新文件
(33)下面程序的運行結果是
#include
void main()
{
int num=1;
int &ref=num;
ref=ref+2;
cout < num=num+3;
cout < }
A)13
B)16
C)36
D)33
(34)下面程序的運行結果是
#include
void fun(int *a,int *b)
{
int x=*a;
*a=*b; *b=x;
cout<<*a<<*b<<" ";
}
void main()
{
int x=1, y=2;
fun(&x,&y);
cout< }
A)1212
B)1221
C)2112
D)2121
(35)下列程序的運行結果為
#include
int i=0;
class A{
public:
A(){i++;}
};
void main()
{
A a,b[3],*c;
c=b;
cout< }
A)2
B)3
C)4
D)5
二、填空題。請將每一個空的正確答案寫在答題卡序號的橫線上,答在試卷上不給分。
(1)數據結構分為邏輯結構與存儲結構,線性鏈表屬于 1 。
(2)在面向對象方法中,類之間共享屬性和操作的機制稱為 2 。
(3)耦合和內聚是評價模塊獨立性的兩個主要標準,其中 3 反映了模塊內各成分之間的聯系。
(4)一個項目具有一個項目主管,一個項目主管可管理多個項目,則實體"項目主管"與實體"項目"的聯系屬于 4 的聯系。
(5)數據庫設計分為以下6個設計階段:需求分析階段、 5 、邏輯設計階段、物理設計階段、實施階段、運行和維護階段。
(6)開發(fā)一個C++語言程序的步驟通常包括編輯、 6 、鏈接、運行和調試。
(7)假設int a=1,b=2;則表達式a+++--b的值為 7 。
(8)下面程序的輸出結果為 8 。
#include
void main()
{
int num=0,i=8;
do{
i--;
num++;
}while(--i);
cout< }
(9)通過使用new和delete兩個運算符進行的分配為 9 存儲分配。
(10)下面程序的運行結果為 10 。
#include
void fun(int x=0,int y=0)
{
cout< }
void main()
{
fun (5);
}
(11)在C++語言中,訪問一個對象的成員所用的運算符是 11 ,訪問一個指針所指向的對象的成員所用的運算符是 12 。
(12)C++語言支持的兩種多態(tài)性分別是編譯時的多態(tài)性和 13 的多態(tài)性。
(13)重載的運算符保持其原有的 14 、優(yōu)先級和結合性不變。
(14)cout.put(′A′);,還可以表示為 15 。
【9月全國計算機二級C++預測題】相關文章:
2015下半年全國計算機二級C++預測題08-23
2015年9月全國計算機二級C++預測題答案及解析06-19
全國計算機二級C++選擇特訓題09-16
全國計算機二級考試C++真題09-20
2015下半年全國計算機二級C++預測題答案及解析09-04
全國計算機等級考試二級C++筆試真題10-11