點擊查看:2016年計算機二級《C++》基礎(chǔ)練習題及答案匯總
1[單選題] 下列運算符中不能在C++中重載的是( )。
A.?:B.+C.-D.<=
參考答案:A
參考解析:本題考查運算符的重載。C++中,::、*…?:這4個運算符不能重載。
2[單選題]下列關(guān)于派生類敘述中,錯誤的是
A.派生類至少要有一個基類
B.派生類中包括了從基類繼承的成員
C.一個派生類可以作為另一個派生類的基類
D.基類成員被派生類繼承以后訪問權(quán)限保持不變
參考答案:D
3[單選題]若要說明一個類型名STP,使得STP s;等價于char*s;,以下選項中正確的是 ( )。
A.typedef STP chara*s;
B.typedefa *char STP:
C.typedef STPfi*char;
D.typedef chara*TP:
參考答案:D
參考解析:本題考查類型定義typedef的使用方式,考生常犯的問題是把兩者的位置顛倒。
4[單選題]有下列程序:
#include
voiD.main( )
{
int i,k,a[10],p[3];
k=5;
for(i=0;i<9;i++) a[i]=i;
for(i=0;i<3;i++) p[i]=a[i*(i+1)];
for(i=0;i<3;i++) k+=p[i]*2;
cout<
}
其輸出結(jié)果是( )。
A.20B.21C.22D.23
參考答案:B
5[單選題]下面程序的運行結(jié)果為
#include
void main()
{
for(int a=0,x=0;!x&&a<=10;a++)
{
a++;
} l
cout<<
}
A.10 B.11 C.12 D. 0
參考答案:C
6[單選題]在下面的類定義中,橫線處應(yīng)填入的內(nèi)容是( )。
class Fred
{
public:
void print(){cout<
void setData(double d){data=d;}
static int count;
private:
double data;
};
count=0; //靜態(tài)數(shù)據(jù)成員的定義
A.intB.static intC.int Fred::D.static int Fred::
參考答案:C
參考解析:此題考查的是靜態(tài)數(shù)據(jù)成員的定義。題目中count數(shù)據(jù)成員要定義成靜態(tài)的,其初始化的格式為:類型 類名::靜態(tài)數(shù)據(jù)成員=常量。
7[單選題] 下面關(guān)于模板的描述,錯誤的是( )。
A.函數(shù)模板和類模板的參數(shù)可以是任意的數(shù)據(jù)類型
B.類模板不能直接使用,必須先實例化為相應(yīng)的模板類,然后定義了模板類的對象后才能使用
C.函數(shù)模板不能直接使用,需要實例化為模板函數(shù)后才能使用
D.類模板的成員函數(shù)都是模板函數(shù)
參考答案:A
參考解析:類模板不能被重載,而函數(shù)模板可以,它們不能被未知的數(shù)據(jù)類型替換。
8[單選題]
A.x=15B.x=17C.x=23D.x=25
參考答案:C
參考解析:
9[填空題]數(shù)據(jù)管理技術(shù)的發(fā)展經(jīng)歷了人工管理、文件系統(tǒng)和數(shù)據(jù)庫系統(tǒng)3個階段,其中數(shù)據(jù)獨立性最高的是__________。
參考解析:數(shù)據(jù)庫系統(tǒng)
【解析】在人工管理階段,數(shù)據(jù)無法共享、冗余度大,完全依賴于程序;在文件系統(tǒng)階段,數(shù)據(jù)共享性差;而數(shù)據(jù)庫系統(tǒng)具有三級模式及二級映射的抽象結(jié)構(gòu)系統(tǒng),從而保證了數(shù)據(jù)獨立性的實現(xiàn)。
10[簡答題]使用VC++6.0打開考生文件夾下的源程序文件2.epp。完成空出函數(shù)fun(char*S,char*t)部分。函數(shù)fun(char*s,char*t)的功能是將在字符串S中下標為偶數(shù)位置上的字符,緊隨其后重復(fù)出現(xiàn)一次,放在一個新串t中,t中字符按原字符串中字符的順序排列。
例如:當s中的字符串為“ABCDEF”時,t中的字符串應(yīng)為“AACCEE”。
注意:不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
#include
voidfun(char*s,char*t)
{
}
voidmain()
{
chars[100],t[100];
cout<<"Pleaseenterstrings:"<
tin.getline(s,100);
fun(s,t);
cout<<"Theresultis:"<
return;
}
參考解析:
voidfun(char*s,char*t)
{
inti;
for(i=0;s[i]!==0;i++)
{
if(i%2==0)
{
t[i]=s[i];
t[i+2]='\0';
}
}
}
【解析】本題要求將在字符串s中下標為偶數(shù)位置上的字符,緊隨其后重復(fù)出現(xiàn)一次,放在一個新串t中,t中字符按原字符串中字符的順序排列,也就是說重復(fù)出現(xiàn)一次偶數(shù)位的字符,數(shù)組的下標是從0開始的,所以會重復(fù)第1、3、5…的字符。
相關(guān)推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |