一、選擇題
1.棧和隊列的共同特點是( )
A.都是先進先出
B.都是先進後出
C.只允許在端點處插入和刪除元素
D.沒有共同點
【參考答案】 C
2.鏈表不具有的特點是( )
A.不必事先估計存儲空間
B.可隨機訪問任一元素
C.插入刪除不需要移動元素
D.所需空間與線性表長度成正比
【參考答案】 B
3.為了提高測試的效率,應該( )
A.隨機選取測試數據
B.取一切可能的輸入數據作為測試數據
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
18.5%3
D.a=a+7=c+b
【參考答案】 B
13.有以下程序
#include″iostream.h″
void main()
{int i=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
void main()
{
int x,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[2][]={{1,0,1},{5,2,3}};
a[][3]={{1,2,3},{4,5,6}};
a[2][4]={{1,2,3},{4,5},{6}};
a[][3]={{1,0,1},{},{1,1}};
【參考答案】 B
22.有如下程序
#include
void main()
{float x=2.0,y;
if(x<0.0) y=0.0;
else if(x<10.0) y=1.0/x;
else y=1.0;
cout<
該程序的輸出結果是( )
A.0
B.0.25
C.0.5
D.1.0
【參考答案】 C
23.C++中,表示一條語句結束的標號是( )
A.#
B.;
C.//
D.}
【參考答案】 B
24.已知有定義
const int D=5;
int i=1;
double f=0.32;
char c=15;
則下列選項錯誤的是( )
A.++i;
B.D--;
C.c++;
D.--f;
【參考答案】 B
25.下面程序的功能是把316表示為兩個加數的和,使兩個加數分別能被13和11整除,在劃線處應填入的選項是( )
#include
void main()
{int i=0,j,k;
do{i++;k=316-13*i;} while(___);
j=k/11;
cout<<″316=13*″<
A.k/11 B.k C.k/11==0 D.k=0
【參考答案】 B
26.若已定義:
int a[]={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)
{int num=0,n=0;
while(*(a+num)!=′