點(diǎn)擊查看:2016年計(jì)算機(jī)二級(jí)《C++》基礎(chǔ)練習(xí)題及答案匯總
1[單選題] 下列運(yùn)算符中不能在C++中重載的是( )。
A.?:B.+C.-D.<=
參考答案:A
參考解析:本題考查運(yùn)算符的重載。C++中,::、*…?:這4個(gè)運(yùn)算符不能重載。
2[單選題]下列關(guān)于派生類敘述中,錯(cuò)誤的是
A.派生類至少要有一個(gè)基類
B.派生類中包括了從基類繼承的成員
C.一個(gè)派生類可以作為另一個(gè)派生類的基類
D.基類成員被派生類繼承以后訪問權(quán)限保持不變
參考答案:D
3[單選題]若要說明一個(gè)類型名STP,使得STP s;等價(jià)于char*s;,以下選項(xiàng)中正確的是 ( )。
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[單選題]下面程序的運(yùn)行結(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)于模板的描述,錯(cuò)誤的是( )。
A.函數(shù)模板和類模板的參數(shù)可以是任意的數(shù)據(jù)類型
B.類模板不能直接使用,必須先實(shí)例化為相應(yīng)的模板類,然后定義了模板類的對(duì)象后才能使用
C.函數(shù)模板不能直接使用,需要實(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ù)庫(kù)系統(tǒng)3個(gè)階段,其中數(shù)據(jù)獨(dú)立性最高的是__________。
參考解析:數(shù)據(jù)庫(kù)系統(tǒng)
【解析】在人工管理階段,數(shù)據(jù)無法共享、冗余度大,完全依賴于程序;在文件系統(tǒng)階段,數(shù)據(jù)共享性差;而數(shù)據(jù)庫(kù)系統(tǒng)具有三級(jí)模式及二級(jí)映射的抽象結(jié)構(gòu)系統(tǒng),從而保證了數(shù)據(jù)獨(dú)立性的實(shí)現(xiàn)。
10[簡(jiǎn)答題]使用VC++6.0打開考生文件夾下的源程序文件2.epp。完成空出函數(shù)fun(char*S,char*t)部分。函數(shù)fun(char*s,char*t)的功能是將在字符串S中下標(biāo)為偶數(shù)位置上的字符,緊隨其后重復(fù)出現(xiàn)一次,放在一個(gè)新串t中,t中字符按原字符串中字符的順序排列。
例如:當(dāng)s中的字符串為“ABCDEF”時(shí),t中的字符串應(yīng)為“AACCEE”。
注意:不要改動(dòng)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中下標(biāo)為偶數(shù)位置上的字符,緊隨其后重復(fù)出現(xiàn)一次,放在一個(gè)新串t中,t中字符按原字符串中字符的順序排列,也就是說重復(fù)出現(xiàn)一次偶數(shù)位的字符,數(shù)組的下標(biāo)是從0開始的,所以會(huì)重復(fù)第1、3、5…的字符。
相關(guān)推薦:
各地2016年全國(guó)計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間匯總
2016年計(jì)算機(jī)二級(jí)考試《C++》復(fù)習(xí)資料匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |