C++筆試試題附答案(初級)_第1頁
C++筆試試題附答案(初級)_第2頁
C++筆試試題附答案(初級)_第3頁
C++筆試試題附答案(初級)_第4頁
C++筆試試題附答案(初級)_第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

C++筆試試題及答案(初級)1.從語法上看,()可以用做用戶自定義標識符。A.-lengthB.func&xyzC.3dSpaceD.Main(正確答案)2.從語法上看,下列說法正確的是()。A.宏替換發(fā)生在程序運行時B.宏定義不可以嵌套C.宏替換是字符替換(正確答案)D.宏名必須用大寫字母表示3.下面C++程序執(zhí)行后,a的值是()。

#defineAREA(x)xx

voidmain()

{

inta=4,b=5,c=2;

a=AREA(b/c);

cout<<a;

}

A.3B.16C.20(正確答案)D.254.函數(shù)調(diào)用“fun((exp1,exp2,exp3),(exp4,exp5))”中傳遞的實參是()。A.exp1,exp4B.exp1,exp2,exp3C.exp3,exp5(正確答案)D.exp4,exp55.a<3&&b&1的相反表達式為()。A.a<3||b&1B.a>=3&&b|1C.a>=3||b|1D.a>=3||b>>1<<1==b(正確答案)6.以下程序的輸出是()

voidfunc1(inta,intb){intc=a;a=b;b=c;}

voidfunc2(int&a,int&b){intc=a;a=b;b=c;}

voidmain(){

intx=19,y=92;

func1(x,y);

func2(x,y);

cout<<x<<“,”<<y<<endl;

}

A.19,92B.92,19(正確答案)C.19,19D.92,927.設“intarray[3][5]={{2,4},{3,9,6}};”則array[1][1]的值為()。A.2B.4C.3D.9(正確答案)8.下列語句中,錯誤的是()。A.constinta=6;B.constdoublep;C.intconsta=6;D.doubleconstp;(正確答案)9.設“charx[]=”Hello”;chary[]={‘H’,’e’,’l’,’l’,’o’};”,則下列說法正確的是()。A.x數(shù)組和y數(shù)組的長度相同B.x數(shù)組的長度大于y數(shù)組的長度(正確答案)C.x數(shù)組的長度小于y數(shù)組的長度D.x數(shù)組與y數(shù)組等價10.在C++程序中,對象之間的相互通信通過()A.繼承實現(xiàn)B.調(diào)用成員函數(shù)實現(xiàn)(正確答案)C.封裝實現(xiàn)D.函數(shù)重載實現(xiàn)11.下面C++程序的輸出結果是()。

classclassA

{

private:

staticintnum;

public:

classA(){num++;cout<<num<<"";}

~classA(){num--;cout<<num<<"";}

};

intclassA::num=0;

voidmain()

{

classAobject1;

classAobject2;

}

A.0000B.0101C.1210(正確答案)D.112112.如果利用C++流進行輸入輸出,下面的敘述中正確的是()。A.只能借助于cout進行輸出B.只能進行格式化輸入輸出C.只能使用運算符>>和<<進行輸入輸出D.以上均不正確(正確答案)13.語句“ofstreamofs(“document.txt,ios::app|ios::binary);”的執(zhí)行效果是()。A.若document.txt存在,將文件寫指針定位于文件尾;若文件不存在,創(chuàng)建一個新文件(正確答案)B.若document.txt存在,將其置為空文件;若文件不存在,打開失敗C.若document.txt存在,將文件寫指針定位于文件首;若文件不存在,創(chuàng)建一個新文件D.若document.txt存在,將其置為空文件;若文件不存在,創(chuàng)建一個新文件14.下面說法正確的是()。A.類的內(nèi)聯(lián)函數(shù)必須在類的定義體內(nèi)定義B.內(nèi)聯(lián)函數(shù)必須通過關鍵字inline來定義C.內(nèi)聯(lián)函數(shù)在運行時是將該函數(shù)的目標代碼插入每個調(diào)用該函數(shù)的地方D.內(nèi)聯(lián)函數(shù)在編譯時是將該函數(shù)的目標代碼插入每個調(diào)用該函數(shù)的地方(正確答案)15.類定義“classBase{intnum;};classDerived:Base{};”中,成員num和派生類Derived的隱含訪問權限是()A.公有成員;公有繼承B.私有成員;私有繼承(正確答案)C.私有成員;公有繼承D.保護成員;保護繼承16.一個類的友元函數(shù)或友元類能夠通過成員操作符訪問該類的()。A.所有成員(正確答案)B.私有成員C.公用成員D.保護成員17.下列關于Qt的說法錯誤的是()。A.Qt中一個信號只能連接槽函數(shù),不能連接到另外的一個信號(正確答案)B.Qt中一個信號可以和多個槽相連C.Qt中繼承自QObject類的類對象可以自動析構D.Qt中信號與槽可以斷開18.下列描述錯誤的是()A.抽象類的派生類也可以是抽象類B.有純虛函數(shù)的類都是抽象類C.純虛函數(shù)一定不能有函數(shù)實現(xiàn)(正確答案)D.抽象類只能作為基類來使用,其純虛函數(shù)的實現(xiàn)由派生類給出19.對于下面的類定義,描述正確的是()

classBase{

public:

virtualvoidfunction1(){}

voidfunction2(){}

};

classDerived:publicBase{

public:

voidfunction1(){cout<<”classDerivedfunction1”<<endl;}

virtualvoidfunction2(){

cout<<”classDerivedfunction2”<<endl;

}

};

A.Base::function2()和Derived::function1()都是虛函數(shù)B.Base::function2()和Derived::function1()都不是虛函數(shù)C.Derived::function1()是虛函數(shù),而Base::function2()不是虛函數(shù)(正確答案)D.Derived::function1()不是虛函數(shù),而Base::function2()是虛函數(shù)20.下列可以重載的運算符是()A.sizeof()B.->C.#D.!(正確答案)21.設“inta=3;intb=a<<3;”,那么b的值為()A.3B.9C.12D.24(正確答案)22.下面的C++程序執(zhí)行后,輸出的結果是()

classExample{

public:

intdata;

voidSetData(inti);

};

intdata=1;

voidExample::SetData(intiData){data=iData;}

voidmain(){

Exampleobject1;

intdata=5;

object1.SetData(0);

cout<<object1.data<<”;”;

object1.SetData(data);

cout<<object1.data<<”;”;

object1.SetData(::data);

cout<<object1.data;

}

A.0;1;5B.0;5;5C.0;5;1(正確答案)D.0;1;123.在WIN32平臺下,sizeof(double)=(),sizeof(float)=(),sizeof(double)=(),括號內(nèi)的值分別是()。A.4;8;8B.4;8;4C.8;4;4(正確答案)D.8;4;824.下列關于STL描述正確的是()A.STL容器是完全線程安全的B.std::sort是穩(wěn)定的排序算法C.在vector容器中執(zhí)行插入操作后以前保存的迭代器可能會失效(正確答案)D.在vector容器中,begin返回的是第一個元素的迭代器,end返回的是最后一個元素的迭代器25.下列編譯過程順序正確的是()A.語法分析、詞法分析、語義分析、代碼優(yōu)化、中間代碼生成、目標代碼生成B.詞法分析、語法分析、語義分析、中間代碼生成、代碼優(yōu)化、目標代碼生成(正確答案)C.語法分析、語義分析、詞法分析、代碼優(yōu)化、中間代碼生成、目標代碼生成D.詞法分析、語義分析、語法分析、中間代碼生成、代碼優(yōu)化、目標代碼生成26.下列C++程序執(zhí)行后,如果輸出為123,那么程序中空缺的語句是()。

inti=1;

classExample{

public:

staticinti;

intvalue(){returni-1;}

intvalue()const{returni+1;}

};

intExample::i=2;

voidmain(){

inti=3;

Exampleexample1;

constExampleexample2;

______

}

A.cout<<example1.value()<<Example::i<<example2.value();(正確答案)B.cout<<Example::i<<example1.value()<<example2.value();C.cout<<example1.value()<<example2.value()<<Example::i;D.cout<<example2.value()<<Example::i<<example1.value();27.下面的C++程序執(zhí)行后,輸出“#”和“”的個數(shù)分別是()。

inta=0;

do{a+=3;cout<<’#’;}while(a<20);

while(a-->0)cout<<’’;

A.7和20B.8和20C.7和21(正確答案)D.8和2128.下列C++程序的輸出結果是()。

voidmain(){

chars="121234342";

inta=0,b=0,c=0,d=0;

for(inti=0;s[i]!=’\0’;i++)

switch(s[i]){

case’1’:d++;

case’2’:c++;

case’3’:b++;

case’4’:a++;

}

cout<<a<<","<<b<<","<<c<<","<<d<<endl;

}

A.2,2,3,2B.9,6,5,3C.9,7,5,2(正確答案)D.2,2,2,229.下面C++程序執(zhí)行的輸出結果是()

#include<typeinfo>

classB1{

public:

virtual~B1(){};

};

classB2{

public:

virtual~B2(){};

};

classMI:publicB1,publicB2{};

classMI2:publicMI{};

intmain(){

B2b2=newMI2;

cout<<(typeid(b2)==typeid(MI2))

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論