全國計算機等級考試二級筆試試卷3套
在學習和工作中,只要有考核要求,就會有試卷,經(jīng)過半個學期的學習,究竟學到了什么?需要試卷來幫我們檢驗。你知道什么樣的試卷才能切實地幫助到我們嗎?下面是小編整理的全國計算機等級考試二級筆試試卷,歡迎大家分享。
全國計算機等級考試二級筆試試卷 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è)計風格的是
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ù)的根本目標是要解決數(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)當系統(tǒng)內(nèi)存不夠時,會自動回收不再使用的內(nèi)存單元,因此程序中不必用釋放內(nèi)存空間
D)當動態(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纱丝芍厦鎖f語句的...
處的表達式應(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è)計 答案及評分標準 選擇題((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ù)的,鏈式存儲結(jié)構(gòu)的存儲空間不一定是連續(xù)的 B.順序存儲結(jié)構(gòu)只針對線性結(jié)構(gòu),鏈式存儲結(jié)構(gòu)只針對非線性結(jié)構(gòu) C.順序存儲結(jié)構(gòu)能存儲有序表,鏈式存儲結(jié)構(gòu)不能存儲有序表 D.鏈式存儲結(jié)構(gòu)比順序存儲結(jié)構(gòu)節(jié)省存儲空間 4.下列敘述中正確的是(D)。 A.棧是“先進先出”的線性表 B.隊列是“先進后出”的線性表 C.循環(huán)隊列是非線性結(jié)構(gòu) D.有序線性表既可以采用順序存儲結(jié)構(gòu),也可以采用鏈式存儲結(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.二叉樹只能采用鏈式存儲結(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)隊列是鏈式存儲結(jié)構(gòu) D.循環(huán)隊列是非線性存儲結(jié)構(gòu) 47.設(shè)某棵樹的度為 3,其中度為 3,2,1 的結(jié)點個數(shù)分別為 3,0,4。則該樹中的葉子結(jié)點數(shù)為 。˙) 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.具有兩個以上指針域的鏈式結(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指針指向的位置插入新元素。當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.在當前位置插入一個書簽,通過“查找”功能定位書簽 正確答案:D 10.在Word 中編輯一篇文稿時,縱向選擇一塊文本區(qū)域的最快捷操作方法是( )。 A.按下Ctrl 鍵不放,拖動鼠標分別選擇所需的文本 B.按下Alt 鍵不放,拖動鼠標選擇所需的文本 C.按下Shift 鍵不放,拖動鼠標選擇所需的文本 D.按Ctrl+Shift+F8 組合鍵,然后拖動鼠標所需的文本 正確答案:B 11.手寫板或者鼠標屬于( )。 A.輸入設(shè)備 B.輸出設(shè)備 C.中央處理器 D.存儲器 正確答案:A 解析:計算機有輸入、存儲、運算、控制和輸出五個部分組成。手寫板和鼠標都屬于輸入設(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è)與學校的主干局網(wǎng)絡(luò)。故正確答案為B選項。 13.第四代計算機的標志是微處理器的出現(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