




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
二級C++筆試-304(總分100,做題時間90分鐘)一、選擇題
在下列各題的A)、B)、C)、D)選項中,只有一個選項是正確的。1.
下面內容不屬于使用軟件危機的是(
)。A
軟件質量難以保證B
軟件的成本不斷提高C
軟件需求增長緩慢D
軟件不可維護或維護程度非常低2.
下列敘述中,正確的是(
)。A
while語句構成的循環不能用其他語句構成的循環來代替B
do-while語句構成的循環只能用break語句退出C
用while語句構成的循環,只有在while后的表達式為非0時才執行循環D
do-while語句構成的循環,只有在while后的表達式為0時才結束循環3.
以下程序執行后的輸出結果是(
)。
#include<iostream.h>
classBasel
public:
voidfun()cout<<"Basel"<<end1;
;
classBase2
public:
voidfun()
cout<<"Base2"<<end1;
classDerived:publicBasel,publicBase2
;
voidmain()
DerivedObj;
Obj.fun();
A
BaselB
Base2C
BaselBase2D
程序產生二義性4.
有如下程序:
#include<iostream>
usingnamespacestd;
intgetSum(intnum);
intmain()
inti;
for(i=1;i<4;i++)
cout<<getSum(i);
return0;
intgetSum(inthum)
staticintsum=O;
sum+=num;
returnsum;
上述程序執行后的輸出結果是(
)。A
136B
248C
123D
1355.
數據字典(DD)是定義以下哪種系統描述工具中的數據的工具(
)。A
數據流程圖B
系統流程圖C
程序流程圖D
軟件結構圖6.
若有以下程序:
voidg(int**q)
(**q)++;
(*q)++;
voidmain()
intline[5];
int*p=line;
for(i=0;i<5;i++)
*p=i;
g(&P);
for(i=0;i<5;i++)
cout<<line[i];
cout<<end1;
該程序運行后的輸出結果為(
)。A
12345B
01234C
11111D
555557.
以下各項說法中,正確的是(
)。A
當通過引用傳遞參數時,函數創建一個變量以存儲參數的值B
當通過引用傳遞參數時,函數無法訪問參數的值C
當通過引用傳遞參數時,調用程序創建一個臨時變量以容納參數的值D
當通過引用傳遞參數時,函數訪問調用程序中參數的原始值8.
若有定義“intk,*q;”,則下列各選項中,賦值表達式正確的是(
)。A
q=(&k+1)B
q=&kC
q=kD
*q=&k9.
概要設計是軟件系統結構的總體設計,以下選項中不屬于概要設計的是(
)。A
把軟件劃分成模塊B
確定模塊之間的調用關系C
確定各個模塊的功能D
設計每個模塊的偽代碼10.
有如下程序:
#include<iostream>
usingnamespacestd;
classsample
private:
intx,y;
public:
sample(inti,intj)
x=i;
y=j;
voiddisp()
cout<<"displ"<<end1;
voiddisp()
const
cout<<"disp2"<<end1;
;
intmain()
constsamplea(i,2);
a.disp();
return0;
該程序運行后的輸出結果是(
)。A
disp1B
disp2C
disp1disp2D
程序編譯時出錯11.
下面的程序段中,有(
)處錯誤和警告。
#include<stdio.h>
intmain()
intx;
cin>>x
cout<<x;
A
1B
2C
3D
412.
有以下程序:
#include<iostream>
usingnamespacestd;
intf1(intx,inty)
returnx>y?x:y;
intf2(intx,inty)
returnx>y?y:x;
intmain()
inta=4,b=3,c=5,d,e,f;
d=f1(a,b);
d=f1(d,c);
e=f2(a,b);
e=
f2(e,c);
f=a+b+c-d-e;
cout<<d<<","<<e<<","<<f<<end1;
return0;
執行后的輸出結果是(
)。A
3,4,5B
5,3,4C
5,4,3D
3,5,413.
下列對派生類的描述中,錯誤的是(
)。A
一個派生類可以作為另一個派生類的基類B
派生類至少有一個基類C
派生類的默認繼承方式是私有派生D
派生類只繼承了基類的公有成員和保護成員14.
關于類型轉換的說法中,錯誤的是(
)。A
如果a為血型變量,b為char型變量,則a+b的值為血型B
如果a為float型變量,b為int型變量,則a-b的值為float型C
如果a為double型變量,b為float型變量,則a*b的值為double型D
如果a為血型變量,b為血型變量,則a/(double)b的值為int型15.
下列關于棧的敘述中,不正確的是(
)。A
在棧中能插入數據B
在棧中能刪除數據C
棧是先進先出的線性表D
棧是先進后出的線性表16.
下列各項特點中,屬于線性表的順序存儲結構的是(
)。A
線性表中所有元素所占的存儲空間是不連續的B
線性表的數據元素在存儲空間中是隨便存放的C
線性表中所有元素所占的存儲空間是連續的D
前后件兩個元素在存儲空間是隨便存放的17.
一個關系數據庫文件中的各條記錄(
)。A
前后順序不能任意顛倒,一定要按照輸入的順序排列B
前后順序可以任意顛倒,不影響庫中數據的數據關系C
前后順序可以任意顛倒,但排列/頃序不同,統計處理的結果就可能不同D
前后順序不能任意顛倒,一定要按照關鍵詞段值的順序排列18.
對于輸入輸出,在設計和編程時都應該考慮的原則是(
)。A
對部分輸入數據檢驗數據的合法性B
不允許默認值C
輸入一批數據時,最好使用輸入結束標志D
輸入數據時,不允許使用自由格式19.
有以下程序:
#include<iostream>
usingnamespacestd;
intmain()
chars1[10],s2[10];
char
*p=s1,*q=s2;
cin>>s1>>s2;
while(*p!='\0')
p++;
while(*q!='\0')
*p++=*q++;
*p='\0';
cout<<s1<<end1;
return0;
A
abcd0ghijB
abcd0ghij0C
abcdD
abcdghij20.
對下列程序的描述中,正確的是(
)。
#include<iostream>
usingnamespacestd;
intFun(int,int);
intmain()
cout<<Fun(5,50)<<end1;
return0;
intFun(intx,inty)
returnx*x+y*y;
A
該函數定義正確,但函數調用方式錯誤B
該函數調用方式正確,但函數定義錯誤C
該函數的定義和調用方式都是正確的D
該函數的定義和調用方式都是錯誤的21.
以下程序執行結果是(
)。
#include<iostream.h>
classBase
public
virtualvoidfun()
cout<<"B";
;
classDerived
public:
Derived()
cout<<"D";
virtualvoidfun()
Base::fun();
cout<<"C";
intmain()
Base*ptr;
Derivedobj;
ptr=&obj;
p->fun();
return0;
A
DBCB
DCBC
BDCD
CBD22.
對待排序文件的初始狀態不作任何要求的排序方法有(
)。A
直接插入和快速排序B
直接插入和歸并排序C
歸并和快速排序D
歸并和直接選擇排序23.
一個類的友元函數或友元類可以通過成員操作符訪問該類的(
)。A
私有成員B
保護成員C
公有成員D
所有成員24.
下面對靜態數據成員的描述中,正確的是(
)。A
靜態數據成員可以在類體內進行初始化B
靜態數據成員不可以通過類的對象調用C
靜態數據成員不能受private(私有)控制符的作用D
靜態數據成員可以直接通過類名調用25.
有以下程序:
#include<iostream>
usingnamespacestd;
classA
private:
intx,y;
public:
voidset(inti,intj)
x=i;
y=j;
intget_y()
returny;
;
classbox
private:
intlength,width;
Alabel;
public:
voidset(int1,intw,ints,intp)
length=1;
width=w;
label.set(s,p);
intget_area()
returnlength*width;
;
intmain()
boxsmall;
small.set(2,4,1,35);
cout<<small.get_area()<<end1;
return0;
運行后的輸出結果是(
)。A
8B
4C
35D
7026.
若有以下程序
#include<iostream>
usingnamespacestd;
classA
public:
A(inti,intj)
a=i;
b=j;
voidmove(intx,inty)
a+=x;
b+=y;
voidshow()
cout<<a<<","<<b<<end1;
private:
int
a,b;
;
classB:
privateA
public:
B(inti,intj):A(i,j)
voidfun()
move(3,5);
voidf1()
A::show();
;
intmain()
Bd(3,4);
d.fun();
d.f1();
return0;
程序執行后的輸出結果是(
)。A
3,4B
6,8C
6,9D
4,327.
下列各項中不屬于算法基本特征的是(
)。A
可行性B
遞歸性C
確定性D
有窮性28.
執行語句序列
ofstreamoutfile("data.dat");
if(...)
cout<<"ok";elsecout<<"fail";
后,如果文件打開成功,顯示“ok”,否則顯示“fail”。由此可知,上面if語句“...”處的表達是(
)。A
outfile.fail()或outfileB
outfile.good()或!outfileC
outfile.good()或outfileD
outfile.fail()或!outfile29.
下列描述中,(
)是抽象類的特性。A
可以說明虛函數B
可以進行構造函數重載C
可以定義友元函數D
不能說明其對象30.
下列關于鏈式存儲的敘述中,正確的是(
)。A
鏈式存儲結構的空間不可以是不連續的B
數據節點的存儲順序與數據元素之間的邏輯關系必須一致C
鏈式存儲方式只可用于線性結構D
鏈式存儲也可用于非線性結構二、填空題
請將每空的正確答案寫在【1】~【15】序號的橫線上。1.
對于長度為n的線性表,若進行順序查找,則時間復雜度為
【1】
。2.
已知某序列為49,38,65,97,76,13,27,試采用該序列的第一個元素為樞軸進行快速排序,則經過一趟快速排序之后所得到的序列為:
【2】
。3.
軟件生命周期一般可分為以下階段:問題定義、可行性研究、
【3】
、設計、編碼、
【4】
、運行與維護。4.
在選擇運算所得到的結果關系中,所含的元組數不合
【5】
原關系中的元組數。5.
當輸入10,11,12時,下面程序運行結果是
【6】
。
#include<iostream>
usingnamespacestd;
intmain()
int
a,b,c,max;
cin>>a>>b>>c;
max=a;
if(max<B)
max=b;
if(max<C)
max=c;
cout<<max<<end1;
return0;
6.
下面程序的功能是:將字符數組a中下標值為偶數的元素從小到大排列,其他元素不變。請填空完成此程序。
#include<iostream>
#include<string>
usingnamespacestd;
intmain()
chara[]="changuage",t,m;
int
i,j,k;
k=strlen(A);
for(i=0;i<=k-2;i+=2)
m=i;
for(j=i+2;j<=k;
【7】
)
if(a[m]>a[j]
m=j;
if(
【8】
)
t=a[i];
a[i]=a[m];
a[m]=t;
cout<<a<<end1;
return0;
7.
閱讀下面程序:
#include<iostream>
usingnamespacestd;
intfun(
inta,
intb)
intc;
c=a*b;
returnc;
intmain()
inta=3,
b=5,
c=4,
x=O;
x=fun(fun(a,
b),
c);
cout<<x<<end1;
return0;
其運行結果是
【9】
。8.
在C++語言中,每個類都有一個隱含的指針叫
【10】
指針。該指針指向
【11】
。9.
經常和一個運算符連用,構成一個運算符函數名的C++關鍵詞是
【12】
。10.
若有以下程序:
#include<iostream>
usingnamespacestd;
template<classT>
Tmin(Tx,Ty)
if(x<y)
returnx;
else
returny;
intmain()
intn1=2,n2=10;
doubled1=1.5;d2=5.6;
cout<<min(n1,n2)<<",";
cout<<min(d2,d2)<<end1;
return0;
程序運行后的輸出結果是
【13】
。11.
以下程序運行后的輸出結果是
【14】
。
#include<iostream>
#include<string>
usingnamespacestd;
classY;
classX
intx;
char*strx;
public:
X(int
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 云南民族大學《現代儀器分析及實驗》2023-2024學年第二學期期末試卷
- 吉林交通職業技術學院《媒介批評學B》2023-2024學年第二學期期末試卷
- 保定職業技術學院《數字信號處理實訓》2023-2024學年第二學期期末試卷
- 唐山科技職業技術學院《晶體生長原理與技術》2023-2024學年第二學期期末試卷
- 甘肅中醫藥大學《高分子材料成型模具》2023-2024學年第二學期期末試卷
- 大理大學《C語言》2023-2024學年第二學期期末試卷
- 重慶城市管理職業學院《衛生法學》2023-2024學年第二學期期末試卷
- 陽江職業技術學院《動物生產學牛羊》2023-2024學年第二學期期末試卷
- 西藏大學《建筑安全與技術》2023-2024學年第二學期期末試卷
- 肇慶學院《機器學習算法》2023-2024學年第二學期期末試卷
- 伊犁將軍府課件
- 中醫護理不良事件
- 初中常見原子團及其化合價、化學式、化學方程式
- 《城市公園配套設施設計導則》
- 供應鏈安全培訓教材課件
- 2024年醫院考勤的管理制度
- 卡西歐手表5213(PRG-550)中文說明書
- 2024年度北京市安全員之B證(項目負責人)測試卷(含答案)
- 蘋果電腦macOS效率手冊
- 2024年新人教版七年級上冊數學教學課件 第四章 整式的加減 章末復習
- 卸車工合同協議書
評論
0/150
提交評論