全國計算機等級考試二級筆試試卷3套
在學(xué)習(xí)和工作中,只要有考核要求,就會有試卷,經(jīng)過半個學(xué)期的學(xué)習(xí),究竟學(xué)到了什么?需要試卷來幫我們檢驗。你知道什么樣的試卷才能切實地幫助到我們嗎?下面是小編整理的全國計算機等級考試二級筆試試卷,歡迎大家分享。

全國計算機等級考試二級筆試試卷 1
公共基礎(chǔ)知識及C++語言程序設(shè)計
一、選擇題((1)~(35)每小題2分,共70分)
下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項涂寫在答題卡相應(yīng)位置上,答在試卷上不得分。
(1) 下面敘述正確的是
A)算法的執(zhí)行效率與數(shù)據(jù)的存儲結(jié)構(gòu)無關(guān)
B)算法的空間復(fù)雜度是指算法程序中指令(或語句)的條數(shù)
C)算法的有窮性是指算法必須能在執(zhí)行有限個步驟之后終止
D)以上三種描述都不對
(2)以下數(shù)據(jù)結(jié)構(gòu)中不屬于線性數(shù)據(jù)結(jié)構(gòu)的是
A)隊列 B)線性表 C)二叉樹 D)棧
(3)在一棵二叉樹上第5層的結(jié)點數(shù)最多是
A)8 B)16 C)32 D)15
(4)下面描述中,符合結(jié)構(gòu)化程序設(shè)計風(fēng)格的是
A)使用順序、選擇和重復(fù)(循環(huán))三種基本控制結(jié)構(gòu)表示程序的控制邏輯
B)模塊只有一個入口,可以有多個出口
C)注重提高程序的執(zhí)行效率
D)不使用goto語句
(5)下面概念中,不屬于面向?qū)ο蠓椒ǖ氖?/p>
A)對象 B)繼承 C)類 D)過程調(diào)用
(6)在結(jié)構(gòu)化方法中,用數(shù)據(jù)流程圖(DFD)作為描述工具的軟件開發(fā)階段是
A)可行性分析 B)需求分析 C)詳細設(shè)計 D)程序編碼
(7)在軟件開發(fā)中,下面任務(wù)不屬于設(shè)計階段的是
A)數(shù)據(jù)結(jié)構(gòu)設(shè)計 B)給出系統(tǒng)模塊結(jié)構(gòu)
C)定義模塊算法 D)定義需求并建立系統(tǒng)模型
(8)數(shù)據(jù)庫系統(tǒng)的核心是
A)數(shù)據(jù)模型 C)軟件工具
B)數(shù)據(jù)庫管理系統(tǒng) D)數(shù)據(jù)庫
(9)下列敘述中正確的是
A)數(shù)據(jù)庫系統(tǒng)是一個獨立的系統(tǒng),不需要操作系統(tǒng)的支持
B)數(shù)據(jù)庫設(shè)計是指設(shè)計數(shù)據(jù)庫管理系統(tǒng)
C)數(shù)據(jù)庫技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)共享的問題
D)數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)的物理結(jié)構(gòu)必須與邏輯結(jié)構(gòu)一致
(10)下列模式中,能夠給出數(shù)據(jù)庫物理存儲結(jié)構(gòu)與物理存取方法的是
A)內(nèi)模式 B)外模式 C)概念模式 D)邏輯模式
(11)關(guān)于面向?qū)ο蟮某绦蛟O(shè)計方法,下列說法正確的是
A)“封裝性”指的是將不同類型的相關(guān)數(shù)據(jù)組合在一起,作為一個整體進行處理
B)“多態(tài)性”指的是對象的狀態(tài)會根據(jù)運行時要求自動變化
C)基類的私有成員在派生類的對象中不可訪問,也不占內(nèi)存空間
D)在面向?qū)ο蟮某绦蛟O(shè)計中,結(jié)構(gòu)化程序設(shè)計方法仍有著重要作用
(12)判斷字符型變量ch是否為大寫英文字母,應(yīng)使用表達式
A ) ch>=A & ch<=Z B ) ch<=a ch="">=Z
C ) A<=ch<=z d="" ch="">=A && ch<=Z
(13)已知下列語句中的x和y都是int型變量,其中錯誤的語句
A ) x=y++; B ) x=++y; C ) (x+y)++; D ) ++x=y;
(14)執(zhí)行語句序列
int n;
cin >> n;
switch(n)
{ case 1:
case 2: cout << 1;
case 3:
case 4: cout << 2; break;
default: cout << 3;
}
時,若鍵盤輸入1,則屏幕顯示
A)1 B)2 C)3 D)12
(15)下列程序的輸出結(jié)果是
#include
using namespace std;
int main()
{
char a[] = "Hello, World";
char *ptr = a;
while (*ptr)
{
if (*ptr >= a && *ptr <= z)
cout << *ptr + A -a);
else cout << *ptr;
ptr++;
}
return 0;
}
A ) HELLO, WORLD B ) Hello, World
C ) hELLO, wORLD D ) hello, world
(16)已知:int m=10;在下列定義引用的語句中,正確的是
A ) int &x=m; B )int y=&m;
C )int &z; D ) int &t=&m;
(17)下列函數(shù)原型聲明中錯誤的是
A ) void Fun(int x=0, int y=0);
B ) void Fun(int x, int y);
C ) void Fun(int x, int y=0);
D ) void Fun(int x=0, int y);
(18)已知程序中已經(jīng)定義了函數(shù)test,其原型是int test(int, int, int);,則下列重載形式中正確的是
A ) char test(int,int,int);
B ) double test(int,int,double);
C ) int test(int,int,int=0);
D ) float test(int,int,float=3.5F);
(19)有以下程序
#include
int i = 0;
void fun()
{ {
static int i = 1;
std::cout<
}
std::cout<
}
int main()
{
fun(); fun();
return 0;
}
程序執(zhí)行后的輸出結(jié)果是
A)1,2,1,2, B)1,2,2,3, C)2,0,3,0, D)1,0,2,0,
(20)已知函數(shù)f的原型是:void f(int *a, long &b); 變量v1、v2的定義是:int v1;long v2;,正確的調(diào)用語句是
A) f(v1, &v2); B) f(v1, v2);
C) f(&v1, v2); D) f(&v1, &v2);
(21)有以下類定義
class MyClass
{
public:
MyClass(){cout<<1;}
};
則執(zhí)行語句MyClass a, b[2], *p[2];后,程序的輸出結(jié)果是
A)11 B)111 C)1111 D)11111
(22)關(guān)于友元,下列說法錯誤的是
A)如果類A是類B的友元,那么類B也是類A的友元
B)如果函數(shù)fun()被說明為類A的友元,那么在fun()中可以訪問類A的私有成員
C)友元關(guān)系不能被繼承
D)如果類A是類B的友元,那么類A的所有成員函數(shù)都是類B的友元
(23)關(guān)于動態(tài)存儲分配,下列說法正確的是
A)new和是C++語言中專門用于動態(tài)內(nèi)存分配和釋放的函數(shù)
B)動態(tài)分配的內(nèi)存空間也可以被初始化
C)當(dāng)系統(tǒng)內(nèi)存不夠時,會自動回收不再使用的內(nèi)存單元,因此程序中不必用釋放內(nèi)存空間
D)當(dāng)動態(tài)分配內(nèi)存失敗時,系統(tǒng)會立刻崩潰,因此一定要慎用new
(24)有以下程序
#include
using namespace std;
class MyClass
{
public:
MyClass(int n){number = n;}
//拷貝構(gòu)造函數(shù)
MyClass(MyClass &other){ number=other.number;}
~MyClass(){}
private:
int number;
};
MyClass fun(MyClass p)
{
MyClass temp(p);
return temp;
}
int main()
{
MyClass obj1(10), obj2(0);
MyClass obj3(obj1);
obj2=fun(obj3);
return 0;
}
程序執(zhí)行時,MyClass類的拷貝構(gòu)造函數(shù)被調(diào)用的次數(shù)是
相關(guān)文檔推薦:
2011年3月全國計算機二級C++考試真題與答案
計算機全部等級考試
2011年9月計算機等級考試二級C++
2009年9月二級C++筆試
2010年3月計算機等級考試二級C++筆試
2010年9月全國計算機二級C++筆試
2008年9月二級C++筆試
2012年3月全國計算機等級考試二級C++
A)5 B)4 C)3 D)2
(25)在公有派生的情況下,派生類中定義的成員函數(shù)只能訪問原基類的
A)公有成員和私有成員 B)私有成員和保護成員
C)公有成員和保護成員 D)私有成員、保護成員和公有成員
(26)在C++中用來實現(xiàn)運行時多態(tài)性的是
A)重載函數(shù) B)析構(gòu)函數(shù)
C)構(gòu)造函數(shù) D)虛函數(shù)
(27)一個類可以同時繼承多個類,稱為多繼承。下列關(guān)于多繼承和虛基類的表述中,錯誤的是
A)每個派生類的.構(gòu)造函數(shù)都要為虛基類構(gòu)造函數(shù)提供實參
B)多繼承時有可能出現(xiàn)對基類成員訪問的二義性問題
C)使用虛基類可以解決二義性問題并實現(xiàn)運行時的多態(tài)性
D)建立最派生類對象時,虛基類的構(gòu)造函數(shù)會首先被調(diào)用
(28)在一個類體的下列聲明中,正確的純虛函數(shù)聲明是
A) virtual void vf()=0; B) void vf(int)=0;
C) virtual int vf(int); D) virtual void vf(int) { }
(29)在下面的運算符重載函數(shù)的原型中,錯誤的是
A) Volume operator - (double, double);
B) double Volume::operator- (double);
C) Volume Volume: :operator - (Volume);
D) Volume operator - (Volume, Volume);
(30)下列是模板聲明的開始部分,其中正確的是
A) template
B) template
C) template
D) template
(31)執(zhí)行語句序列
ofstream outfile("DATA.DAT");
if(...) cout << "OK"; else cout << "FAIL";
后,如果文件打開成功顯示“OK”,否則就顯示“F厶n!薄S纱丝芍,上面if語句的...
處的表達式應(yīng)是
A )outfile.fail() 或 outfile B )outfile.good() 或 !outfile
C )outfile.good() 或 outfile D )outfile.fail() 或 !outfile
(32)C++流中重載的運算符>>是一個( )
A)用于輸出操作的非成員函數(shù) B)用于輸入操作的非成員函數(shù)
C)用于輸出操作的成員函數(shù) D)用于輸入操作的成員函數(shù)
(33)有以下類定義
class Point {
public:
Point(int x = 0, int y = 0) { _.x = x; _.y = y; }
void Move(int xOff, int yOff)
{ _x += xOff; _.y += yOff; }
void Print() const
{ cout << ( << _x << , << _y << ) << endl; }
private:
int _x, _y;
};
下列語句中會發(fā)生編譯錯誤的是
A) Point pt; pt.Print();
B) const Point pt; pt.Print();
C) Point pt; pt.Move(l, 2);
D) const Point pt; pt.Move(l, 2);
(34)有以下類定義
class MyClass
{
private:
int id;
char gender,
char *phone;
public:
MyClass():id(0),gender(#),phone(NULL) { }
MyClass(int no, char ge=#, char *ph= NULl.)
{ id=no;gende=ge;phone=ph; }
};
下列類對象定義語句中錯誤的是
A) MyClass myObj;
B) MyClass myObj(11, "13301111155");
C) MyClass myObj(12, m);
D) MyClass myObj(12);
(35)有以下程序
#include
using namespace std;
class Complex
{
public:
Complex(double r =0, double i =0):re(r), im(i) { }
double real() const { return re; }
double imag() const { return im;}
Complex operator +(Complex c) const
{ return Complex(re+c.re, im+c.im); }
private:
double re, im;
};
int main()
{
Complex a = Complex(l, 1) + Complex(5);
cout << a.real() << + << a.imag() <
return 0;
}
程序執(zhí)行后的輸出結(jié)果是
A) 6+6i B) 6+1i C) 1+6i D) 1+1i
二、填空題(每空2分,共30分)
請將每一個空的正確答案寫在答題卡[1]-[15]序號的橫線上,答在試卷上不得分。注意:以命令關(guān)鍵字填空的必須拼寫完整。
(1)算法的復(fù)雜度主要包括 [1] 復(fù)雜度和空間復(fù)雜度。
(2)數(shù)據(jù)的邏輯結(jié)構(gòu)在計算機存儲空間中的存放形式稱為數(shù)據(jù)的 [2] 。
(3)若按功能劃分,軟件測試的方法通常分為白盒測試方法和 [3] 測試方法。
(4)如果一個工人可管理多個設(shè)備,而一個設(shè)備只被一個工人管理,則實體“工人”與實體“設(shè)備”之間存在 [4] 的聯(lián)系。
(5)關(guān)系數(shù)據(jù)庫管理系統(tǒng)能實現(xiàn)的專門關(guān)系運算包括選擇、連接和 [5] 。
(6)設(shè)有定義語句:int a=12;,則表達式a*=2+3的運算結(jié)果是 [6] 。
(7)從實現(xiàn)的角度劃分,C++所支持的兩種多態(tài)性分別是 [7] 時的多態(tài)性和運行時的多態(tài)性。
(8)將—個函數(shù)聲明為一個類的友元函數(shù)必須使用關(guān)鍵字 [8] 。
(9)請按下面注釋的提示,將類B的構(gòu)造函數(shù)定義補充完整。
class A
{
int a;
public:
A(int aa=0) { a=aa; }
};
class B: public A {
int b;
A c;
public:
//用aa初始化基類A,用aa+1初始化類對象成員c
B(int aa): [ 9 ] { b=aa+2; }
};
(10)下列程序的輸出結(jié)果是 [10] 。
#include
using namespace std;
int main()
{
int i = 5;
int &r = i; r = 7;
cout << i << endl;
return 0;
}
(11)下列程序的輸出結(jié)果是 [11] 。
#include
using namespace std;
class Test {
public:
Test() { cnt++; }
~Test() {cnt--; }
static int Count() { return cnt;}
private:
static int cnt;
};
int Test::cnt = 0;
int main()
{
cout << Test::Count0 << ;
Test tl, t2;
Test* pT3 = new Test;
Test* pT4 = new Test;
cout << Test::Count0 << ;
pT4;
pT3;
cout << Test::Count() << endl;
return 0;
}
(12)下面是用來計算n的階乘的遞歸函數(shù),請將該函數(shù)的定義補充完整。(注:階乘的定義是n!=n*(n-1)*...*2*1)
unsigned fact(unsigned n)
{
if ( n<= 1)
return 1;
return [ 12 ] ;
}
(13)下列程序的輸出結(jié)果是 [13] 。
#include
using namespace std;
template
T fun(T a, T b) { return (a<=b)?:b;}
int main()
{
cout << fun(3, 6) << , << fun (3.14F, 6.28F) << endl;
return 0;
}
(14)與成員訪問表達式p->name等價的表達式是 [14] 。
(15)下列程序的輸出結(jié)果是 [15] 。
#include
using namespace std;
class base {
public:
int n;
base(int x) { n = x;}
virtual void set(int m) { n = m; cout << n << ;}
};
class deriveA:public base {
public:
deriveA(int x):base(x) { }
void set(mt m) { n += m; cout << n << ;}
};
class deriveB:public base [
public:
deriveB(int x):base(x) { }
void set(int m) { n +=m; cout < }; int main() { deriveA dl(1); deriveB d2(3); base *pbase; pbase = &dl; pbase->aet(1); pbase = &d2; pbase->set(2); return 0; } 2004年9月 全國計算機等級考試二級筆試試卷 公共基礎(chǔ)知識及C++語言程序設(shè)計 答案及評分標(biāo)準(zhǔn) 選擇題((1)—(35)每小題2分,共70分) (1) C (2) C (3) B (4) A (5) D (6) B (7) D (8) B (9) C (10)A (11)D (12)D (13)C (14)D (15)A (16)A (17)D (18)B (19)D (20)C (21)B (22)A (23)B (24)B (25)C (26)D (27)C (28)A (29)A (30)C (31)C (32)B (33)D (34)B (35)B 二、填空題(每空2分,共30分) (1)[1] 時間 (2)[2] 存儲結(jié)構(gòu) 或 物理結(jié)構(gòu) 或 物理存儲結(jié)構(gòu) (3)[3] 黑盒 或 黑箱 (4)[4] 一對多 或 1對多 或 I:M 或 I:N(其中M、N大小寫均可) (5)[5] 投影 (6)[6] 60 (7)[7] 編譯 (8)[8] friend (9)[9] A(aa),c(aa+1) 或 c(aa+1),A(aa) (10)[10] 7 (11)[11] 042 (12)[12] n*fact(n-1) (13)[13] 3,3.14 (14)[14] (*p).name (15)[15] 25 相關(guān)文檔推薦: 2011年3月全國計算機二級C++考試真題與答案 計算機全部等級考試 2011年9月計算機等級考試二級C++ 2009年9月二級C++筆試 2010年3月計算機等級考試二級C++筆試 2010年9月全國計算機二級C++筆試 2008年9月二級C++筆試 2012年3月全國計算機等級考試二級C++ 01.數(shù)據(jù)結(jié)構(gòu)與算法 1.一個棧的初始狀態(tài)為空,F(xiàn)將元素 1、2、3、4、5、A、B、C、D、E 依次入棧,然后再 依次出棧,則元素出棧的順序是(B) A.12345ABCDE B.EDCBA54321 C.ABCDE12345 D.54321EDCBA 2.下列敘述中正確的是(D) A.循環(huán)隊列有隊頭和隊尾兩個指針,因此,循環(huán)隊列是非線性結(jié)構(gòu) B.在循環(huán)隊列中,只需要隊頭指針就能反映隊列中元素的動態(tài)變化情況 C.在循環(huán)隊列中,只需要隊尾指針就能反映隊列中元素的動態(tài)變化情況 D.循環(huán)隊列中元素的個數(shù)是由隊頭指針和隊尾指針共同決定 3.下列敘述中正確的是(A) A.順序存儲結(jié)構(gòu)的存儲一定是連續(xù)的,鏈?zhǔn)酱鎯Y(jié)構(gòu)的存儲空間不一定是連續(xù)的 B.順序存儲結(jié)構(gòu)只針對線性結(jié)構(gòu),鏈?zhǔn)酱鎯Y(jié)構(gòu)只針對非線性結(jié)構(gòu) C.順序存儲結(jié)構(gòu)能存儲有序表,鏈?zhǔn)酱鎯Y(jié)構(gòu)不能存儲有序表 D.鏈?zhǔn)酱鎯Y(jié)構(gòu)比順序存儲結(jié)構(gòu)節(jié)省存儲空間 4.下列敘述中正確的是(D)。 A.棧是“先進先出”的線性表 B.隊列是“先進后出”的線性表 C.循環(huán)隊列是非線性結(jié)構(gòu) D.有序線性表既可以采用順序存儲結(jié)構(gòu),也可以采用鏈?zhǔn)酱鎯Y(jié)構(gòu) 5.支持子程序調(diào)用的數(shù)據(jù)結(jié)構(gòu)是(A)。 A.棧 B.樹 C.隊列 D.二叉樹 6.某二叉樹有 5 個度為 2 的結(jié)點,則該二叉樹中的葉子結(jié)點數(shù)是(C)。 A.10 B.8 C.6 D.4 7.下列排序方法中,最壞情況下比較次數(shù)最少的是(D)。 A.冒泡排序 B.簡單選擇排序 C.直接插入排序 D.堆排序 8.算法的有窮性是指(A)。 A.算法程序的運行時間是有限的 B.算法程序所處理的數(shù)據(jù)量是有限的 C.算法程序的長度是有限的 D.算法只能被有限的用戶使用 9.對長度為 n 的線性表排序,在最壞情況下,比較次數(shù)不是 n(n-1)/2 的排序方法是(D)。 A.快速排序 B.冒泡排序 C.直接插入排序 D.堆排序 10.下列關(guān)于棧的敘述正確的是(B)。 A.棧按“先進先出”組織數(shù)據(jù) B.棧按“先進后出”組織數(shù)據(jù) C.只能在棧底插入數(shù)據(jù) D.不能刪除數(shù)據(jù) 11.算法的空間復(fù)雜度是指(A)。 A.算法在執(zhí)行過程中所需要的計算機存儲空間 B.算法所處理的數(shù)據(jù)量 C.算法程序中的語句或指令條數(shù) D.算法在執(zhí)行過程中所需要的臨時工作單元數(shù) 12.下列關(guān)于線性鏈表的敘述中,正確的是(C)。 A.各數(shù)據(jù)結(jié)點的.存儲空間可以不連續(xù),但它們的存儲順序與邏輯順序必須一致 B.各數(shù)據(jù)結(jié)點的存儲順序與邏輯順序可以不一致,但它們的存儲空間必須連續(xù) C.進行插入與刪除時,不需要移動表中的元素 D.以上說法均不正確 13.一棵二叉樹共有 25 個結(jié)點,其中 5 個是葉子結(jié)點,則度為 1 的結(jié)點數(shù)為(A) A.16 B.10 C.6 D.4 14.下列關(guān)于棧敘述正確的是(A)。 A.棧頂元素最先能被刪除 B.棧頂元素最后才能被刪除 C.棧底元素永遠不能被刪除 D.棧底元素最先被刪除 15.下列敘述中正確的是(C)。 A.在棧中,棧中元素隨棧底指針與棧頂指針的變化而動態(tài)變化 B.在棧中,棧頂指針不變,棧中元素隨棧底指針的變化而動態(tài)變化 C.在棧中,棧底指針不變,棧中元素隨棧頂指針的變化而動態(tài)變化 D.以上說法均不正確 16.設(shè)循環(huán)隊列的存儲空間為 Q(1:35),初始狀態(tài)為 front=rear=35,F(xiàn)經(jīng)過一系列入隊 與退隊運算后,front=15,rear=15,則循環(huán)隊列中的元素個數(shù)為(D)。 A.15 B.16 C.20 D.0 或 35 17.下列與隊列結(jié)構(gòu)有關(guān)聯(lián)的是(D)。 A.函數(shù)的遞歸調(diào)用 B.數(shù)組元素的引用 C.多重循環(huán)的執(zhí)行; D.先到先服務(wù)的作業(yè)調(diào)度 【解析】:隊列的進出原則是“先進先出”,即為先到先服務(wù),所以選 D。 18.對下列二叉樹進行前序遍歷的結(jié)果為(C)。 A.DYBEAFCZX B.YDEBFZXCA C.ABDYECFXZ D.ABCDEFXYZ 19.設(shè)順序表的長度為 n。下列算法中,最壞情況下比較次數(shù)小于 n 的是(A)。 A.尋找最大項 B.堆排序 C.快速排序 D.順序查找法 20.設(shè)棧的順序存儲空間為 S(1:m),初始狀態(tài)為 top=m+1,F(xiàn)經(jīng)過一系列正常的入棧與退 棧操作后,top=20,則棧中的元素個數(shù)為(C)。 A.30 B.20 C.m-19 D.M-20 21.某二叉樹的后序遍歷序列與中序遍歷序列相同,均為 ABCDEF,則按層次輸出(同一層 從左到右)的序列為(A)。 A.FEDCBA B.CBAFED C.DEFCBA D.ABCDEF 22.設(shè)棧的順序存儲空間為 S(1:m),初始狀態(tài)為 top=0,F(xiàn)經(jīng)過一系列正常的入棧與退棧操 作后,top=m+1,則棧中的元素個數(shù)為(A)。 A.不可能 B.m+1 C.0 D.m 23.下列排序法中,最壞情況下時間復(fù)雜度最小的是(A)。 A.堆排序 B.快速排序 C.希爾排序 D.冒泡排序 24.下列敘述中正確的是(A)。 A.對數(shù)據(jù)進行壓縮存儲會降低算法的空間復(fù)雜度 B.算法的優(yōu)化主要通過程序的編制技巧來實現(xiàn) C.算法的復(fù)雜度與問題的規(guī)模無關(guān) D.數(shù)值型算法只需考慮計算結(jié)果的可靠性 25.下列排序法中,每經(jīng)過一次元素的交換會產(chǎn)生新的逆序的是(A)。 A.快速排序 B.冒泡排序 C.簡單插入排序 D.簡單選擇排序 26.在具有 2n 個結(jié)點的完全二叉樹中,葉子結(jié)點個數(shù)為(A)。 A.n B.n+1 C.n-1 D.n/2 27.下列敘述中正確的是(A)。 A.在棧中,棧頂指針的動態(tài)變化決定棧中元素的個數(shù) B.在循環(huán)隊列中,隊尾指針的動態(tài)變化決定隊列的長度 C.在循環(huán)鏈表中,頭指針和鏈尾指針的動態(tài)變化決定鏈表的長度 D.在線性鏈表中,頭指針和鏈尾指針的動態(tài)變化決定鏈表的長度 28.某二叉樹的中序遍歷序列為 CBADE,后序遍歷序列為 CBADE,則前序遍歷序列為(A)。 A.EDABC B.CBEDA C.CBADE D.EDCBA 29.下列敘述中正確的是(A)。 A.在循環(huán)隊列中,隊頭指針和隊尾指針的動態(tài)變化決定隊列的長度 B.在循環(huán)隊列中,隊尾指針的動態(tài)變化決定隊列的長度 C.在帶鏈的隊列中,隊頭指針與隊尾指針的動態(tài)變化決定隊列的長度 D.在帶鏈的棧中,棧頂指針的動態(tài)變化決定棧中元素的個數(shù) 30.設(shè)順序表的長度為 n。下列排序方法中,最壞情況下比較次數(shù)小于 n(n-1)/2 的是(A)。 A.堆排序 B.快速排序 C.簡單插入排序 D.冒泡排序 31.某二叉樹共有 12 個結(jié)點,其中葉子結(jié)點只有 1 個。則該二叉樹的深度為(根結(jié)點在第 1 層)(D) A.3 B.6 C.8 D.12 32.設(shè)一棵樹的度為 3,其中度為 3,2,1 的結(jié)點個數(shù)分別為 4,1,3。則該棵樹中的葉子 結(jié)點數(shù)為(A)。 A.10 B.11 C.12 D.不可能有這樣的樹 33.設(shè)表的長度為 15。則在最壞情況下,快速排序所需要的比較次數(shù)為(A)。 A.105 B.55 C.15 D.75 34.設(shè)循環(huán)隊列的存儲空間為 Q(1:100),初始狀態(tài)為空,F(xiàn)經(jīng)過一系列正常操作后,front=49,則循環(huán)隊列中的元素個數(shù)為(A)。 A.不確定 B.49 C.51 D.50 35.某完全二叉樹按層次輸出(同一層從左到右)的序列為 ABCDEFGH。該完全二叉樹的中 序序列為(A)。 A.HDBEAFCG B.HDEBFGCA C.ABDHECFG D.ABCDEFGH 36.下面屬于整數(shù)類 I 的實例的是(A) A.229 B.0.229 C.229E-2 D."229" 37.下列敘述中正確的是(C)。 A.所謂有序表是指在順序存儲空間內(nèi)連續(xù)存放的元素序列 B.有序表只能順序存儲在連續(xù)的存儲空間內(nèi) C.有序表可以用鏈接存儲方式存儲在不連續(xù)的存儲空間內(nèi) D.任何存儲方式的有序表均能采用二分法進行查找 38.設(shè)二叉樹如下則后序序列為(C) A.ABDEGCFH B.DBGEAFHC C.DGEBHFCA D.ABCDEFGH 39.下列敘述中正確的是(B)。 A.結(jié)點中具有兩個指針域的鏈表一定是二叉鏈表 B.結(jié)點中具有兩個指針域的鏈表可以是線性結(jié)構(gòu),也可以是非線性結(jié)構(gòu) C.二叉樹只能采用鏈?zhǔn)酱鎯Y(jié)構(gòu) D.循環(huán)鏈表是非線性結(jié)構(gòu) 40.某二叉樹中有15個度為1的結(jié)點,16個度為2的結(jié)點,則該二叉樹中總的結(jié)點數(shù)為(C)。 A.32 B.46 C.48 D.49 41.下列敘述中正確的是(A) A.有的二叉樹也能用順序存儲結(jié)構(gòu)表示 B.有兩個指針域的鏈表就是二叉鏈表 C.多重鏈表一定是非線性結(jié)構(gòu) D.順序存儲結(jié)構(gòu)一定是線性結(jié)構(gòu) 42.設(shè)二叉樹共有 375 個結(jié)點,其中度為 2 的結(jié)點有 187 個。則度為 1 的結(jié)點個數(shù)是(A)。 A.0 B.1 C.188 D.不可能有這樣的二叉樹 43.某系統(tǒng)結(jié)構(gòu)圖如下圖所示該系統(tǒng)結(jié)構(gòu)圖的寬度是(B)。 A.5 B.4 C.2 D.1 44.設(shè)二叉樹的前序序列為 ABDEGHCFIJ,中序序列為 DBGEHACIFJ。則按層次輸出(從上 到下,同一層從左到右)的序列為(A) A.ABCDEFGHIJ B.DGHEBIJFCA C.JIHGFEDCBA D.GHIJDEFBCA 45.設(shè)順序表的長度為 16,對該表進行簡單插入排序。在最壞情況下需要的比較次數(shù)為(D) A.15 B.60 C.30 D.120 46.下列敘述中正確的是(A) A.循環(huán)隊列是線性結(jié)構(gòu) B.循環(huán)隊列是線性邏輯結(jié)構(gòu) C.循環(huán)隊列是鏈?zhǔn)酱鎯Y(jié)構(gòu) D.循環(huán)隊列是非線性存儲結(jié)構(gòu) 47.設(shè)某棵樹的度為 3,其中度為 3,2,1 的結(jié)點個數(shù)分別為 3,0,4。則該樹中的葉子結(jié)點數(shù)為 (B) A.6 B.7 C.8 D.不可能有這樣的樹 48.下列敘述中錯誤的是(C) A.具有兩個根結(jié)點的數(shù)據(jù)結(jié)構(gòu)一定屬于非線性結(jié)構(gòu) B.具有兩個以上葉子結(jié)點的數(shù)據(jù)結(jié)構(gòu)一定屬于非線性結(jié)構(gòu) C.具有兩個以上指針域的鏈?zhǔn)浇Y(jié)構(gòu)一定屬于非線性結(jié)構(gòu) D.具有一個根結(jié)點且只有一個葉子結(jié)點的數(shù)據(jù)結(jié)構(gòu)也可能是非線性結(jié)構(gòu) 49.下列結(jié)構(gòu)中屬于非線性結(jié)構(gòu)的是(C) A.循環(huán)隊列 B.二維數(shù)組 C.二叉鏈表 D.雙向鏈表 50.從表中任何一個結(jié)點位置出發(fā)就可以不重復(fù)地訪問到表中其他所有結(jié)點的鏈表是(A) A.循環(huán)鏈表 B.雙向鏈表 C.單向鏈表 D.二叉鏈表 51.設(shè)元素集合為 D={1,2,3,4,5,6}。B=(D,R)為線性結(jié)構(gòu)所對應(yīng)的 R 是(A)。 A.R={(6,1),(5,6),(1,3),(2,4),(3,2)} B.R={(4,5),(6,1),(5,6),(1,3),(2,4),(3,2)} C.R={(6,1),(5,6),(1,3),(3,4),(3,2)} D.R={(6,1),(5,6),(2,3),(2,4),(3,2)} 1.下列敘述中錯誤的是( )。 A.對于各種特定的輸入,算法的時間復(fù)雜度是固定不變的 B.算法的時間復(fù)雜度與使用的計算機系統(tǒng)無關(guān) C.算法的時間復(fù)雜度與使用的程序設(shè)計語言無關(guān) D.算法的時間復(fù)雜度與實現(xiàn)算法過程中的具體細節(jié)無關(guān) 正確答案:A 解析:算法的時間復(fù)雜度是指執(zhí)行算法所需要的計算工作量。為了能夠比較客觀地反映出一個算法的效率,在度量一個算法的工作量時,不僅應(yīng)該與所使用的計算機、程序設(shè)計語言以及程序編制者無關(guān),而且還應(yīng)該與算法實現(xiàn)過程中的許多細節(jié)無關(guān)。為此,可以用算法在執(zhí)行過程中所需基本運算的執(zhí)行次數(shù)來度量算法的工作量。算法所執(zhí)行的基本運算次數(shù)還與問題的規(guī)模有關(guān);對應(yīng)一個固定的規(guī)模,算法所執(zhí)行的基本運算次數(shù)還可能與特定的輸入有關(guān)。故本題答案為A選項。 2.在長度為n的順序表中查找一個元素,假設(shè)需要查找的元素一定在表中,并且元素出現(xiàn)在每個位置上的可能性是相同的,則在平均情況下需要比較的次數(shù)為( )。 A.(n+1)/2 B.n C.3n/4 D.n/2 正確答案:A 解析:在順序表中查找,最好情況下第一個元素就是要查找的元素,則比較次數(shù)為1;在最壞情況下,最后一個元素才是要找的元素,則比較次數(shù)為n。兩種情況平均即(1+n)/2.故本題答案為A選項。 3.設(shè)非空二叉樹的所有子樹中,其左子樹上的結(jié)點值均小于根結(jié)點值,而右子樹上的結(jié)點值均不小于根結(jié)點值,則稱該二叉樹為排序二叉樹。對排序二叉樹的遍歷結(jié)果為有序序列的是( )。 A.中序序列 B.前序序列 C.后序序列 D.前序序列或后序序列 正確答案:A 解析:前序遍歷:訪問根結(jié)點在訪問左子樹和訪問右子樹之前。即先訪問根結(jié)點,然后遍歷左子樹,最后遍歷右子樹;并且在遍歷左子樹和右子樹時,仍然先訪問根結(jié)點,然后遍歷左子樹,最后遍歷右子樹。中序遍歷:訪問根結(jié)點在訪問左子樹和訪問右子樹兩者之間。即先遍歷左子樹,然后訪問根結(jié)點,最后遍歷右子樹。并且在遍歷左子樹與右子樹時,仍然首先遍歷左子樹,然后訪問根結(jié)點,最后遍歷右子樹。后序遍歷:訪問根結(jié)點在訪問左子樹和訪問右子樹之后。即首先遍歷左子樹,然后遍歷右子樹,最后訪問根結(jié)點;并且在遍歷左子樹和右子樹時,仍然首先遍歷左子樹,然后遍歷右子樹,最后訪問根結(jié)點。題目給出的二叉樹顯示是左結(jié)點小于根結(jié)點,根結(jié)點小于等于右結(jié)點。如果要使結(jié)果為有序序列,那么遍歷過程應(yīng)該是左結(jié)點-根結(jié)點-右結(jié)點,或者右結(jié)點-根結(jié)點=左結(jié)點。根據(jù)前面3種遍歷特點可知,中序遍歷符合要求。故本題答案為A選項。 4.循環(huán)隊列的存儲空間為Q(1:50),初始狀態(tài)為front=rear=50.經(jīng)過一系列正常的入隊與退隊操作后,front=rear=25,此后又插入一個元素,則循環(huán)隊列中的.元素個數(shù)為( )。 A.1或50且產(chǎn)生上溢錯誤 B.51 C.26 D.2 正確答案:A 解析:循環(huán)隊列是隊列的一種順序存儲結(jié)構(gòu),用隊尾指針rear指向隊列中的隊尾元素,用排頭指針front指向排頭元素的前一個位置。入隊運算時,隊尾指針進1(即rear+1),然后在rear指針指向的位置插入新元素。當(dāng)front=rear=25時可知隊列空或者隊列滿,此后又插入了一個元素,如果之前隊列為空,插入操作之后隊列里只有一個元素,如果插入之前隊列已滿(50個元素),執(zhí)行插入則會產(chǎn)生溢出錯誤。故本題答案為A選項。 5.軟件生命周期是指( )。 A.軟件產(chǎn)品從提出、實現(xiàn)、使用維護到停止使用退役的過程 B.軟件的工程實施階段 C.軟件的開發(fā)與管理 D.軟件的實現(xiàn)和維護 正確答案;A 解析:通常,將軟件產(chǎn)品從提出、實現(xiàn)、使用維護到停止使用退役的過程稱為軟件生命周期。也就是說,軟件產(chǎn)品從考慮其概念開始,到該軟件產(chǎn)品不能使用為止的整個時期都屬于軟件生命周期。故本題答案為A選項。 6.設(shè)二叉樹的前序序列為ABDEGHCFIJ,中序序列為DBGEHACIFJ.則按層次輸出(從上到下,同一層從左到右)的序列為( )。 A.ABCDEFGHIJ B.DGHEBIJFCA C.JIHGFEDCBA D.CHIJDEFBCA 正確答案:A 7.設(shè)循環(huán)隊列的存儲空間為Q(1:50),初始狀態(tài)為front=rear=50,F(xiàn)經(jīng)過一系列入隊與退隊操作后,front-1=rear。為了在該隊列中尋找值最大的元素,在最壞情況下需要的比較次數(shù)為( )。 A.0 B.1 C.48 D.49 正確答案:C 8.設(shè)順序表的長度為40,對該表進行冒泡排序。在最壞情況下需要的比較次數(shù)為( )。 A.820 B.780 C.40 D.41 正確答案:B 9.張編輯休假前正在審閱一部Word 書稿,他希望回來上班時能夠快速找到上次編輯的位置,在Word 2010 中最優(yōu)的操作方法是( )。 A.下次打開書稿時,直接通過滾動條找到該位置 B.記住一個關(guān)鍵詞,下次打開書稿時,通過“查找”功能找到該關(guān)鍵詞 C.記住當(dāng)前頁碼,下次打開書稿時,通過“查找”功能定位頁碼 D.在當(dāng)前位置插入一個書簽,通過“查找”功能定位書簽 正確答案:D 10.在Word 中編輯一篇文稿時,縱向選擇一塊文本區(qū)域的最快捷操作方法是( )。 A.按下Ctrl 鍵不放,拖動鼠標(biāo)分別選擇所需的文本 B.按下Alt 鍵不放,拖動鼠標(biāo)選擇所需的文本 C.按下Shift 鍵不放,拖動鼠標(biāo)選擇所需的文本 D.按Ctrl+Shift+F8 組合鍵,然后拖動鼠標(biāo)所需的文本 正確答案:B 11.手寫板或者鼠標(biāo)屬于( )。 A.輸入設(shè)備 B.輸出設(shè)備 C.中央處理器 D.存儲器 正確答案:A 解析:計算機有輸入、存儲、運算、控制和輸出五個部分組成。手寫板和鼠標(biāo)都屬于輸入設(shè)備。故正確答案為A選項。 12.某企業(yè)需要在一個辦公室構(gòu)建適用于20多人的小型辦公網(wǎng)絡(luò)環(huán)境,這樣的網(wǎng)絡(luò)環(huán)境屬于( )。 A.城域網(wǎng) B.局域網(wǎng) C.廣域網(wǎng) D.互聯(lián)網(wǎng) 正確答案:B 解析:按照覆蓋地理范圍和規(guī)模不同,可以將計算機網(wǎng)絡(luò)分為局域網(wǎng)、城域網(wǎng)和廣域網(wǎng)。局域網(wǎng)是一種在有限區(qū)域內(nèi)使用的網(wǎng)絡(luò),它所覆蓋的地區(qū)范圍較小,一般在幾千米之內(nèi),適用于辦公室網(wǎng)絡(luò)、企業(yè)與學(xué)校的主干局網(wǎng)絡(luò)。故正確答案為B選項。 13.第四代計算機的標(biāo)志是微處理器的出現(xiàn),微處理器的組成是( )。 A.運算器和存儲器 B.存儲器和控制器 C.運算器和控制器 D.運算器、控制器和存儲器 正確答案:C 解析:微處理器由運算器和控制器組成。運算器是計算機處理數(shù)據(jù)形成信息的加工廠,它的主要功能是對數(shù)據(jù)進行算術(shù)運算和邏輯運算?刂破魇怯嬎銠C的指揮中心,它統(tǒng)一控制計算機的各個部件。故正確答案為C選項。 14.在計算機內(nèi)部,大寫字母?G?的ASCII碼為?1000111?,大寫字母?K?的ASCII碼為( )。 A.1001001 B.1001100 C.1001010 D.1001011 正確答案:D 解析:1000111對應(yīng)的十進制數(shù)是71,則?K?的碼值是75,轉(zhuǎn)換成二進制位1001011.故正確答案為D選項。 15.以下不屬于Word文檔視圖的是( )。 A.閱讀版式視圖 B.放映視圖 C.Web版式視圖 D.大綱視圖 正確答案:B 解析:Word提供了5種視圖方式,分別為頁面視圖、閱讀版式視圖、Web版式視圖、大綱視圖和草稿,不包括放映視圖。故正確答案為B選項。 【全國計算機等級考試二級筆試試卷】相關(guān)文章: 全國計算機等級考試二級visualBasic筆試試卷08-07 全國計算機等級考試二級筆試試卷及答案08-04 2015年全國計算機等級考試二級筆試試卷08-11 全國計算機等級考試2016年二級筆試試卷10-04 全國計算機等級考試二級c筆試試卷201609-29 2016年全國計算機等級考試二級筆試試卷08-14 全國計算機等級考試二級VB試卷09-30 全國計算機等級考試二級筆試試卷 2
全國計算機等級考試二級筆試試卷 3