C++開發(fā)基礎(chǔ)(習(xí)題卷10)_第1頁
C++開發(fā)基礎(chǔ)(習(xí)題卷10)_第2頁
C++開發(fā)基礎(chǔ)(習(xí)題卷10)_第3頁
C++開發(fā)基礎(chǔ)(習(xí)題卷10)_第4頁
C++開發(fā)基礎(chǔ)(習(xí)題卷10)_第5頁
已閱讀5頁,還剩72頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

試卷科目:C++開發(fā)基礎(chǔ)C++開發(fā)基礎(chǔ)(習(xí)題卷10)PAGE"pagenumber"pagenumber/SECTIONPAGES"numberofpages"numberofpagesC++開發(fā)基礎(chǔ)第1部分:單項選擇題,共156題,每題只有一個正確答案,多選或少選均不得分。[單選題]1.當(dāng)一個類A中沒有聲明任何成員變量與成員函數(shù),sizeof(A)的值是多少?A)0B)1C)4[單選題]2.對重載函數(shù)形參的描述中,錯誤的是()。A)參數(shù)的個數(shù)可能不同B)參數(shù)的類型可能不同C)參數(shù)的順序可能不同D)參數(shù)的個數(shù)、類型、順序都相同,只是函數(shù)的返回值類型不同[單選題]3.以下代碼片段的輸出結(jié)果是。()unionstudent{Struct{intx,y,z;}i;intk;}a;a.i.x=4;a.i.y=5;a.k=0;printf(""%d"",a.i.x);"A)4B)0C)5D)9[單選題]4.如果定義:floata[10],x;則以下敘述中正確的是()A)語句a=&x;是非法的B)表達(dá)式a+1是非法的C)三個表達(dá)式a[1]、*(a+1)、&a[1]代表的變量互不相同D)表達(dá)式*&a[1]是非法的,應(yīng)該寫成*(&(a[1]))[單選題]5.下列為文件的擴(kuò)展名,能被計算機(jī)直接執(zhí)行的是()。A)cppB)oC)exeD)h[單選題]6.下列對派生類的描述中錯誤的說法是:()。A)派生類至少有一個基類B)派生類可作為另一個派生類的基類C)派生類除了包含它直接定義的成員外,還包含其基類的成員D)派生類所繼承的基類成員的訪問權(quán)限保持不變[單選題]7.以下描述錯誤的是_________A)無論何種繼承方式,在派生類內(nèi)部均不可以直接訪問基類的私有成員;B)無論何種繼承方式,在派生類內(nèi)部均可以直接訪問基類的公有成員。C)無論何種繼承方式,在派生類內(nèi)部均可以直接訪問基類的保護(hù)成員。D)通過派生類對象,可以直接訪問以公有繼承方式繼承的基類的公有成員和保護(hù)成員。[單選題]8.若有以下函數(shù)首部,則下面針對此函數(shù)的函數(shù)聲明語句中正確的是________。intfun(doublex[10],int*n)A)intfun(doublex,int*n);B)intfun(doublex,intn);C)intfun(double*,int*);D)intfun(double*,int&);[單選題]9.循環(huán)隊列存儲在數(shù)組A[0..m]中,則入隊時的操作為A)rear=rear+1B)rear=(rear+1)mod(m-1)C)rear=(rear+1)modmD)rear=(rear+1)mod(m+1)[單選題]10.已知定義inta=1,b=2,c=3;則表達(dá)式a>b?(a>c?a:c):b的值為()。A)1B)2C)3D)不確定[單選題]11.若有語句int*point,a=4;和point=&a;下面均代表地址的一組選項是()A)A,point,*&aB)&*a,&a,*pointC)*&point,*point,&aD)&a,&*point,point[單選題]12.ASCII碼(含擴(kuò)展ASCII碼)可以用一個字節(jié)表示,則可以表示的ASCII碼值個數(shù)為_____。(題)A)1024B)512C)256D)128[單選題]13.[默認(rèn)繼承方式]有類定義如下:ClassA{};classB{};ClassC:publicA,B{};則下列說法正確的是:A)C類公有繼承了A類和B類B)C類公有繼承A類,私有繼承B類C)語法錯誤,一個類不能繼承兩個類D)語法錯誤,繼承時必須寫明繼承方式[單選題]14.在下列成對的表達(dá)式中,運算符?+?的意義不相同的一對是()A)5.0+2.0和5.0+2B)5.0+2.0和5+2.0C)5.0+2.0和5+2D)5+2.0和5.0+2[單選題]15.下列控制格式輸入輸出的操作符中,能夠設(shè)置浮點數(shù)精度的是A)setprecisionB)showpointC)setfillD)setw[單選題]16.判斷字符型變量ch是否為大寫英文字母,應(yīng)使用表達(dá)式()。A)ch>='A'&ch<='Z'B)ch>='A'&&ch<='Z'C)'A'<=ch<='Z'D)ch<='A'||ch>='Z'[單選題]17.希爾排序算法中,最后一趟排序的地址增量一定是下面的哪種情況()。A)nB)n/2C)1D)任意值[單選題]18.設(shè)某棵二叉樹中有2000個結(jié)點,則該二叉樹的最小高度為A)9B)10C)11D)12[單選題]19.函數(shù)fun計算prod=1*2*3*…*n,并返回計算結(jié)果值。但當(dāng)n=100時,程序不正確。要找出該程序的錯誤,正確的調(diào)試方法是()。intfun(intn){intprod,i;prod=1;for(i=1;i<=n;i++)prod*=i;returnprod;}A)監(jiān)視變量prod的值,在prod*=i;行處設(shè)置斷點,然后單步運行,直到發(fā)現(xiàn)錯誤原因B)監(jiān)視變量prod的值,在returnprod;行處設(shè)置斷點,程序中斷后,即可發(fā)現(xiàn)錯誤原因C)在prod=1;處設(shè)置斷點,然后在函數(shù)調(diào)用堆棧中即可發(fā)現(xiàn)錯誤原因D)監(jiān)視變量i的值,在for(i=1;i[單選題]20.在C++語言中,自定義的標(biāo)識符()。A)能使用關(guān)鍵字并且區(qū)分大小寫B(tài))不能使用關(guān)鍵字并且區(qū)分大小寫C)能使用關(guān)鍵字并且不區(qū)分大小寫D)不能使用關(guān)鍵字并且不區(qū)分大小寫[單選題]21.intget();的功能是A)讀入一個字符串并返回它的值B)讀入一個字符并返回它的值C)輸出一個字符串D)輸出一個字符[單選題]22.欲使下列程序輸出?Point:(1,1),Radius:6?,下列填空錯誤的是______。A)第(1)空填Point(x,y)B)第(1)空填x=1,y=1C)第(2)空填Point(c)D)第(2)空填Point(c.x,c.y)[單選題]23.下列函數(shù)中,不能重載運算符的函數(shù)是()。A)成員函數(shù)B)構(gòu)造函數(shù)C)普通函數(shù)D)友員函數(shù)[單選題]24.#includeusingnamespacestd;classDATA{DATA(inta,intb)//1{x=a;y=b;}voidshow(){cout<A)第1行開始的構(gòu)造函數(shù)定義語法有錯誤B)第2行中不能直接訪問x和yC)第3行建立obj對象時,無法調(diào)用構(gòu)造函數(shù)D)第4行obj可以調(diào)用show函數(shù)[單選題]25.以下哪個不是容器操作函數(shù)()A)assignB)swapC)eraseD)length[單選題]26.二叉樹T的前序遍歷序列和中序遍歷序列分別是bdcaef和cdeabf,則其后序遍歷序列為A)ceadfbB)feacdbC)eacdfbD)以上都不對[單選題]27.二叉樹是非線性數(shù)據(jù)結(jié)構(gòu),所以()。A)它不能用順序存儲結(jié)構(gòu)存儲B)它不能用鏈?zhǔn)酱鎯Y(jié)構(gòu)存儲C)順序存儲結(jié)構(gòu)和鏈?zhǔn)酱鎯Y(jié)構(gòu)都能存儲D)順序存儲結(jié)構(gòu)和鏈?zhǔn)酱鎯Y(jié)構(gòu)都不能使用[單選題]28.有如下語句序列:Intk=0;Do{k+=5;cout<<'$';}while(k<19);While(k-->0)cout<<'*';執(zhí)行上面的語句序列輸出字符$和*的個數(shù)分別是()。A)4和20B)5和20C)4和21D)5和21[單選題]29.關(guān)于字符常量的寫法,錯誤的是()。A)"a"B)'/'C)'\0'D)'\a'[單選題]30.一個函數(shù)為voidx(int,charch=?a?),另一個函數(shù)為voidx(int),則它們________。A)可以在同一程序中定義,但不可以重載B)不能在同一程序中定義C)可以在同一程序中定義并可重載D)以上說法均不正確[單選題]31.map的底層數(shù)據(jù)結(jié)構(gòu)是?A)數(shù)組B)鏈表C)紅黑樹D)哈希表[單選題]32.以下描述對應(yīng)哪種排序算法:對待排序進(jìn)行劃分為左、右兩個子序列,對兩個子序列進(jìn)行同樣的排序操作,直到子序列為空或只剩下一個元素為止。A)冒泡排序B)折半插入排序C)快速排序D)希爾排序[單選題]33.有定義如下:inta[5],*p=a;則下列描述錯誤的是_______。A)表達(dá)式p=p+1是合法的B)表達(dá)式a=a+1是合法的C)表達(dá)式p-a是合法的D)表達(dá)式a+2是合法的[單選題]34.內(nèi)聯(lián)函數(shù)的特點是()A)減少代碼量,加快訪問速度B)減少代碼量,減緩訪問速度C)增加代碼量,減緩訪問速度D)增加代碼量,加快訪問速度[單選題]35.下列設(shè)置函數(shù)參數(shù)默認(rèn)值的說明語句中,錯誤的是______。A)intfun(intx,inty=10)B)intfun(intx=5,int=10)C)intfun(intx=5,inty)D)intfun(intx,inty=a+b)[單選題]36.運行如下程序段,輸出結(jié)果是()。inta=2,b=-1,c=2;//語句1if(a<b)//語句2if(b<0)c=0;elsec+=1;cout<<c<<endl;//語句3A)0B)1C)2D)3[單選題]37.有如下函數(shù)定義:voidfunc(inta,int&b){a++;b++;}若執(zhí)行代碼段:intx=0,y=1func(x,y);則變量x和y值分別是()A)0和1B)1和1C)0和2D)1和2[單選題]38.函數(shù)intsum(inta=10,intb=15,intc=25);不可與下列哪個函數(shù)同時聲明()A)intsum(int,int,int,int)B)intsum(int,int,int)C)intsum(double)D)intsum(double,double,double);[單選題]39.遞歸函數(shù)中的形參是()A)自動變量B)外部變量C)靜態(tài)變量D)可根據(jù)需要自定義存儲類型[單選題]40.一棵有n個結(jié)點的二叉樹,按層次從上到下,同一層從左到右順序存儲在一維數(shù)組A[1..n]中,則二叉樹中第i個結(jié)點(i從1開始用上述方法編號)的右孩子在數(shù)組A中的位置是A)A[2i](2i<=n)B)A[2i+1](2i+1<=n)C)A[i-2]D)條件不充分,無法確定[單選題]41.下列選項中,均是合法的實型常量的是()A)+1e+15e-9.403e2B)-0.1012e-4-8e5C)123e1.2e-.4+2e-1D)-e3.8e-45.e-0[單選題]42.若有定義intx[10]={0,1,2,3,4,5,6,7,8,9},*p1;則數(shù)值不為3的表達(dá)式是________。A)x[3]B)p1=x+3,*p1++C)p1=x+2,*(p1++)D)p1=x+2,*++p1[單選題]43.已知定義int*p[3],則以下說法正確的是()。A)定義了1個int類型的指針變量,該變量具有3個指針B)定義了1個指針數(shù)組,該數(shù)組有3個元素,每個元素都是int類型的指針變量C)定義了1個名為*p的int類型數(shù)組,該數(shù)組含有3個int類型的變量D)定義了1個指向一維數(shù)組的指針變量p,該一維數(shù)組有3個int類型的元素[單選題]44.已知intx=5,y=5,z=5;執(zhí)行語句x%=y+z;后,x的值是()。A)0B)5C)6D)1[單選題]45.若已經(jīng)聲明了函數(shù)原型"voidfun(intA,doubleb=0.0);",則下列重載函數(shù)聲明中正確的是()。A)voidfun(inta=90,doubleb=0.0);B)intfun(intA,doubleB);C)voidfun(doubleA,intB);D)boolfun(intA,doubleb=0.0);[單選題]46.執(zhí)行如下語句,輸出結(jié)果為()Charstr[]="Beijing";Cout<<strlen(strcpy(str,"China"));A)5B)7C)8D)12[單選題]47.下列有關(guān)函數(shù)定義和調(diào)用的敘述中,錯誤的是________。A)一個函數(shù)必須定義后才能使用B)在一個函數(shù)體內(nèi)可以定義另一個函數(shù)C)用戶定義的函數(shù)可以被一個和多個函數(shù)調(diào)用任意多次D)一般要求在函數(shù)調(diào)用時,實參的個數(shù)和類型必須與形參的個數(shù)和類型一致[單選題]48.對于"int*pa[5];"的描述中正確的是A)pa是一個指向數(shù)組的指針,所指向的數(shù)組是5個int型元素B)pa是一個指向某數(shù)組中第5個元素的指針,該元素是int型變量C)pa[5]表示某個元素的第5個元素的值D)pa是一個具有5個元素的指針數(shù)組,每個元素是一個int型指針[單選題]49.C++對C語言作了很多改進(jìn),下列描述中()使得C語言發(fā)生了質(zhì)變,從面向過程變成了面向?qū)ο蟆)增加了一些新的運算符;B)允許函數(shù)重載,并允許設(shè)置缺省參數(shù);C)規(guī)定函數(shù)說明必須用原型;D)引進(jìn)了類和對象的概念;[單選題]50.下列字符串可以用做C++標(biāo)識符的是()。A)A123B)foo~barC)caseD)3var[單選題]51.下列有關(guān)函數(shù)的說法正確的是()。A)在C++語言中,若對函數(shù)類型未加說明,則系統(tǒng)隱含類型為void。B)C++函數(shù)必須有返回值,否則無法使用。C)C++函數(shù)既可以嵌套定義,又可以可遞歸調(diào)用。D)C++函數(shù)中,形式參數(shù)必須指定為確定的類型。[單選題]52.友員的作用之一是()A)提高程序的運行效率B)加強類的封裝C)實現(xiàn)數(shù)據(jù)的隱蔽性D)增加成員函數(shù)的種類[單選題]53.有如下語句序列:ifstreaminfile("DATA.DAT");if(infile.good())cout<<"A";else{cout<<"B";ofstreamoutfile("DATA.DAT");if(outfile.fail())cout<<"C";elsecout<<"D";}若執(zhí)行這個語句序列顯示的是BD,則說明文件DATA.DAT________。A)以讀方式打開成功B)以讀方式打開失敗,但以寫方式打開成功C)以讀方式打開失敗,以寫方式打開也失敗D)以讀方式打開成功,以寫方式打開也成功[單選題]54.以下有關(guān)C語言的說法中,錯誤的是()。A)內(nèi)存泄露一般是指程序申請了一塊內(nèi)存,使用完后,沒有及時將這塊內(nèi)存釋放,從而導(dǎo)致程序占用大量內(nèi)存。B)可以通過malloc(size_t)函數(shù)調(diào)用申請超過該機(jī)器物理內(nèi)存大小的內(nèi)存塊。C)無法通過內(nèi)存釋放函數(shù)free(void*)直接將某塊已經(jīng)使用完的物理內(nèi)存直接還給操作系統(tǒng)。D)可以通過內(nèi)存分配函數(shù)malloc(size_t)直接申請物理內(nèi)存。[單選題]55.包含自定義頭文件file.h的預(yù)處理指令是()A)#define<file.h>B)#includefile.hC)#definefile.hD)#include"file.h"[單選題]56.在C程序的源文件中如果需要使用函數(shù)strcpy,需要在該文件開頭引入哪個頭文件()A)iostream.hB)string.hC)math.hD)不需要任何頭文件[單選題]57.假定T是一個C++類,下列語句執(zhí)行之后,內(nèi)存里創(chuàng)建了()個T對象。Tb(5);Tc[6];T&d=b;Te=b;T*p=newT(4);A)5B)8C)9D)12[單選題]58.非線性結(jié)構(gòu)是數(shù)據(jù)元素之間存在一種A)一對多關(guān)系B)多對多關(guān)系C)多對一關(guān)系D)一對一關(guān)系[單選題]59.在具有n個結(jié)點的有序單鏈表中插入一個新結(jié)點并仍然有序的時間復(fù)雜度是()A)O(1)B)O(n)C)O(n^2)D)O(nlog2n)[單選題]60.若有定義int*p=newint(0),則下列說法正確的是()A)系統(tǒng)用指針變量p來表示所指整型變量B)聲明一個指針變量p,指向名為new的存儲單元C)系統(tǒng)為指針變量p分配一個整型數(shù)據(jù)的存儲空間D)通過運算符new,分配一個整型數(shù)據(jù)的存儲空間,并將其內(nèi)存地址賦予指針變量[單選題]61.下列關(guān)于C++標(biāo)識符的命名不合法的是()A)PadB)name_1C)A#bcD)_a12[單選題]62.關(guān)于以下代碼片段說法正確的是()。inta[5],*pa;pa=a;pa=pa+2;A)pa指向a[2];B)pa的內(nèi)容是a[0]+2C)pa指向a[0]D)語法有錯誤[單選題]63.要求用成員函數(shù)重載的運算符是()。A)=B)==C)<=D)++[單選題]64.給定的一個長度為N的字符串str,查找長度為P(PA)不存在比最壞時間復(fù)雜度O(NP)好的算法B)不存在比最壞時間復(fù)雜度O(N^2)好的算法C)不存在比最壞時間復(fù)雜度O(P^2)好的算法D)存在最壞時間復(fù)雜度為O(N+P)的算法[單選題]65.若已定義的函數(shù)有返回值,則有關(guān)該函數(shù)調(diào)用的敘述中錯誤的是()。A)函數(shù)調(diào)用可以作為獨立的語句存在B)函數(shù)調(diào)用可以作為一個函數(shù)的形參C)函數(shù)調(diào)用可以作為一個函數(shù)的實參D)函數(shù)調(diào)用可以出現(xiàn)在表達(dá)式中[單選題]66.對n個元素進(jìn)行直接插入排序時間復(fù)雜度為A)O(1)B)O(n)C)O(n^2)D)O(logn)[單選題]67.以下輸入輸出語句錯誤的是()A)cout<<x<<endl;B)cin>>y>>z;C)cout>>a>>b;D)cout<<?a?;[單選題]68.設(shè)有一個遞歸函數(shù)如下intf(intn){if(nA)6B)7C)8D)9[單選題]69.已知函數(shù)f的原型是:voidf(int*a,long&b);變量v1、v2的定義是:intv1;longv2;,正確的調(diào)用語句是()。A)f(v1,&v2);B)f(v1,v2);C)f(&v1,v2);D)f(&v1,&v2);[單選題]70.下列()的調(diào)用方式是引用調(diào)用。A)形參和實參都是變量B)形參是指針,實參是地址值C)形參是引用,實參是變量D)形參是變量,實參是地址值[單選題]71.假設(shè)以數(shù)組A[m]存放循環(huán)隊列的元素,其頭尾指針分別為front和rear,則當(dāng)前隊列中的元素個數(shù)為A)(rear-front+m)%mB)rear-front+1C)(front-rear+m)%mD)(rear-front)%m[單選題]72.在一棵有n個結(jié)點的二叉樹中,若度為2的結(jié)點數(shù)為n2,度為1的結(jié)點數(shù)為n1,度為0的結(jié)點數(shù)為n0,則樹的最大高度為A)n0+n1+n2B)n1+n2C)n2+1D)1[單選題]73.下面代碼執(zhí)行結(jié)果為()classA{public:voidB(){coutA)wantfuncptrB)編譯錯誤,A類中沒有成員*func函數(shù)C)沒有任何輸出D)不能A::B取地址[單選題]74.若x是一個boo型變量,y是一個值為100的int型變量,則表達(dá)式x&&y>0的值()。A)為trueB)為falseC)與x的值相同D)與x的值相反[單選題]75.有如下程序段:……For(inti=1;i<4;i++){If(i%2==0)Continue;Cout<<i<<",";}……其輸出的結(jié)果為()。A)1,B)1,3,C)1,3,4,D)1,3[單選題]76.在C++中,容器是一種()A)標(biāo)準(zhǔn)類B)標(biāo)準(zhǔn)對象C)標(biāo)準(zhǔn)函數(shù)D)標(biāo)準(zhǔn)類模板[單選題]77.下面是關(guān)于派生類聲明的開始部分,其中正確的是________。A)classvirtualB:publicAB)virtualclassB:publicAC)classB:publicAvirtualD)classB:virtualpublicA[單選題]78.一個類可包含析構(gòu)函數(shù)的個數(shù)是()A)0個B)1個C)至少一個D)0個或多個[單選題]79.快速排序在下列哪種情況下最易發(fā)揮其長處。A)被排序的數(shù)據(jù)中含有多個相同排序碼B)被排序的數(shù)據(jù)已基本有序C)被排序的數(shù)據(jù)完全無序D)被排序的數(shù)據(jù)中的最大值和最小值相差懸殊[單選題]80.用鏈接方式存儲的隊列,在進(jìn)行刪除運算時A)僅修改頭指針B)僅修改尾指針C)頭、尾指針都要修改D)頭、尾指針可能都要修改[單選題]81.設(shè)有:inta=1,b=2,c=3,d=4,m=2,n=2;執(zhí)行(m=a>b)&&(n=c>d)后n的值是()A)1B)2C)3D)0[單選題]82.數(shù)據(jù)結(jié)構(gòu)的二叉鏈表進(jìn)行樹的存儲時,根結(jié)點的右指針是()A)指向最左孩子B)指向最右孩子C)空D)非空[單選題]83.若有定義intx[6]={2,4,6,8,5,7},*p=x,i;要求依次輸出x數(shù)組6個元素中的值,不能完成此操作的語句是________。A)for(i=0;i<6;i++)cout<B)for(i=0;i<6;i++)cout<C)for(i=0;i<6;i++)cout<D)for(i=0;i<6;i++)cout<[單選題]84.流程控制語句的基本控制結(jié)構(gòu)有三種,不屬于這一種結(jié)構(gòu)的是()。A)順序結(jié)構(gòu)B)選擇結(jié)構(gòu)C)循環(huán)結(jié)構(gòu)D)計算結(jié)構(gòu)[單選題]85.以下關(guān)于C++析構(gòu)函數(shù)的描述中,錯誤的是________。A)析構(gòu)函數(shù)名必須以字符~開B)不可定義析構(gòu)函數(shù)的形式參數(shù)C)析構(gòu)函數(shù)由系統(tǒng)自動調(diào)用D)可以重載析構(gòu)函數(shù)[單選題]86.若有如下程序:intmain(){inty=3,x=3,z=1;printf("%d%d\n",(++x,y++),z+2);}運行該程序的輸出結(jié)果是(A)34B)42C)43D)33[單選題]87.閱讀下列程序,則在執(zhí)行后,程序的運行結(jié)果為()。#include<iostream>"#include<string>Usingnamespacestd;Intmain(){chara[30]="nicetomeetyou!";strcpy(a+strlen(a)/2,"you");cout<<a;return0;}A)nicetomeetyouyouB)nicetoC)meetyouyouD)nicetoyou[單選題]88.以下關(guān)于鏈表說法正確的是()。A)鏈表的頭節(jié)點中只存放下1個節(jié)點的指針B)鏈表的尾節(jié)點中不存放指向下1個節(jié)點的指針C)刪除鏈表的頭節(jié)點與尾節(jié)點操作完全相同D)刪除鏈表的頭節(jié)點,意味著整個鏈表都被刪除[單選題]89.設(shè)有定義:intn=0,*p=&n,**q=&p;則以下選項中,正確的賦值語句是(D)。A)p=1;B)*q=2;C)q=p;D)*p=5;[單選題]90.下面關(guān)于類和對象說法不正確是()A)類由數(shù)據(jù)與函數(shù)組成B)一個對象必屬于某個類對象是類的實例C)對象是類的實例D)一個類的對象只有一個[單選題]91.已知:charc='\010';則變量c中包含的字符個數(shù)為()。A)4B)1C)2D)3[單選題]92.下列關(guān)于C++函數(shù)的敘述中,錯誤的是________。A)函數(shù)必須有返回值B)一個函數(shù)中可以有多條return語句C)在不同的函數(shù)中可定義同名的變量D)函數(shù)不能嵌套定義,但可以嵌套調(diào)用[單選題]93.下列選項中,()不能交換變量a和b的值。A)a=b;b=a;B)t=b;b=a;a=t;C)a=a+b;b=a-b;a=a-b;D)t=a;a=b;b=t;[單選題]94.下列不合法的變量名為()。A)intB)int1C)name_0D)name1[單選題]95.一個類的成員函數(shù)也可以成為另一個類的友元函數(shù),這時的友元說明()。A)需加上類域的限定B)不需加上類域的限定C)類域的限定可加可不加D)不需要任何限定[單選題]96.C++對C語言做了很多改進(jìn),即從面向過程變成為面向?qū)ο蟮闹饕蚴牵ǎ〢)增加了一些新的運算符B)允許函數(shù)重載,并允許設(shè)置缺省參數(shù)C)規(guī)定函數(shù)說明符必須用原型D)引進(jìn)了類和對象的概念[單選題]97.設(shè)有定義:intn=0,*p=&n,**q=&p;則以下選項中,正確的賦值語句是()。A)p=1B)*q=2C)q=p;D)*p=5[單選題]98.[成員覆蓋]已知有下列類定義:ClassX{public:intf(){return1;}};ClassY:publicX{public:intf(){return0;}};主函數(shù)代碼:Intmain(){Yy;cout<<y.f()<<endl;return0;}該程序的輸出是:A)0B)1C)10D)y.f()[單選題]99.對函數(shù)intmax(inta,intb=0,intc=0,intd=0,inte=0);下列調(diào)用方式正確的是()A)intm=max(10,11,12,13,14);B)intm=max(10,,12,13,14);C)intm=max(10,11,,13,14);D)intm=max(10,11,12,,14);[單選題]100.已知如下程序:classB{public:B(){}B(intc):count(c){}virtualvoidprint()const=0;private:intcount;};classD:publicB{public:D():B(0){}D(intc):B(c){}voidprint()const{cout<<""hello""<<endl;}};voidmain(){Dd(10);B*pb;pb=&d;//OKB&cb=d;Ddd=*pb;//2B對象不能轉(zhuǎn)換為DD&cd=cb;//3B對象不能轉(zhuǎn)換為D&Bbb=d;//4B類,不能實例化抽象類}則在標(biāo)出的幾個語句中,沒有錯誤的是()。A)1B)2C)3D)4[單選題]101.假如指針p已經(jīng)指向整型變量x,則(*p)++相當(dāng)于________。A)x++B)p++C)*(p++)D)&x++[單選題]102.下列訪問成員的方式哪個是正確的()A)對象名.對象成員名B)對象指針名.對象成員名C)對象名->對象成員名D)類名->對象成員名[單選題]103.下列程序執(zhí)行后的輸出結(jié)果是_____。#include<iostream>Usingnamespacestd;Voidmain(){Intx='f';Cout<<char('A'+(x-'a'+1));}A)GB)HC)ID)J[單選題]104.雙精度浮點型的字節(jié)數(shù)是()。A)4B)1C)0D)8[單選題]105.若指定有n個元素的向量,則建立一個有序單鏈表的時間復(fù)雜性的量級是A)O(1)B)O(n)C)O(n^2)D)O(nlog2n)[單選題]106.類模板的使用實際上是將類模板實例化為1個具體的()。A)類B)對象C)函數(shù)D)模板類[單選題]107.下列有關(guān)常量、變量的說法錯誤的是()。A)C++語言中變量必須?先定義、后使用?B)使用符號常量可增加程序的可讀性C)定義變量時可以對變量進(jìn)行初始化D)在程序中可以改變符號常量的值[單選題]108.IO流中ifstream繼承于()類A)ostreamB)istreamC)ofstreamD)iostream[單選題]109.已知x,y,z均為整型變量,且值均為1,則執(zhí)行語句++x||++y&&++z;后,表達(dá)式x+y的值為()A)1B)2C)3D)4[單選題]110.如果inta=1,b=2,c=3,d=4;,則條件表達(dá)式aA)2B)3C)4D)1[單選題]111.若有以下定義和語句,則對s數(shù)組的元素的正確引用形式是()。ints[4][5],(*ps)[5];ps=s;A)ps+1B)*(ps+3)C)ps[0][2]D)*(ps+1)+3[單選題]112.判斷char型變量c1是否為小寫字母的正確表達(dá)式是________。A)'a'<=c1<='z'B)c1>=a&&c1<=zC)'a'>=c1||'z'<=c1D)c1>='a'&&c1<='z'[單選題]113.下列程序段的輸出是________。shortinti=65536;cout<A)65536B)0C)有語法錯誤,無輸出結(jié)果D)-1[單選題]114.已知int*p,*q,k=0,a=5;p=q=&a;,下列錯誤的賦值語句是________。A)k=p+q;B)a=*p+*q;C)p=q;D)*p=k+*q;[單選題]115.如果有int型變量a,則定義指向變量a的指針p正確的寫法是()A)intp=&vB)int*p=&vC)int&p=*vD)int*p=v[單選題]116.已知:intx,y;則下列if語句中正確的是()。A)if(x==0)y=1;elsey=2;B)if(x==0)theny=1elsey=2C)if(x==0)y=1elsey=2;D)ifx==0y=1;elsey=2;[單選題]117.有以下程序intmain(){inti;for(i=0;i<3;i++)switch(i){case1:cout<A)011122B)012C)012020D)120[單選題]118.對于下面代碼段intx=3,y=3;intt=++x||++y;y的值為()A)不確定B)4C)3D)1[單選題]119.字符串的長度是指()A)串中不同字符的個數(shù)B)串中不同字母的個數(shù)C)串中所含字符的個數(shù)D)串中不同數(shù)字的個數(shù)[單選題]120.用于標(biāo)識十六進(jìn)制前綴或后綴是()A)無B)后綴L或eC)前綴零D)前綴0x[單選題]121.如果進(jìn)棧序列為e1,e2,e3,e4,則不可能的出棧序列是:A)e2,e4,e3,e1B)e4,e3,e2,e1C)e1,e2,e3,e4D)e3,e1,e4,e2[單選題]122.下面程序的輸出結(jié)果是()#includeusingnamespacestd;voidfun(intx,inty,intz){z=x*x+y*y;}intmain(){intz=68;fun(5,2,z);coutA)0B)29C)68D)無定值[單選題]123.在C++中,頭文件擴(kuò)展名為()A)cppB)hC)libD)obj[單選題]124.將一棵有100個結(jié)點的完全二叉樹從根這一層開始,每一層上從左到右依次對結(jié)點進(jìn)行編號,根結(jié)點的編號為1,則編號為49的結(jié)點的左孩子編號為。A)98B)99C)50D)48[單選題]125.設(shè)有基類定義:Classbase{Private:inta;protected:intb;public:intc;};為使變量成員b成為派生類的私有成員,可以采用的繼承方式是()A)私有繼承B)公有繼承C)保護(hù)繼承D)私有、公有、保護(hù)均可[單選題]126.對下列程序,選項中敘述正確的是________。A)程序編譯運行正確B)程序編譯時語句①出錯C)程序編譯時語句②出錯D)程序編譯時語句③出錯[單選題]127.下面程序段:x=3;do{y=x--;if(!y){coutA)將輸出##B)是死循環(huán)C)將輸出###D)含有不合法的控制表達(dá)式[單選題]128.分別以下列序列構(gòu)造二叉排序樹,與用其它三個序列所構(gòu)造的結(jié)果不同的是()A)(100,80,90,60,120,110,130)B)(100,120,110,130,80,60,90)C)(100,60,80,90,120,110,130)D)(100,80,60,90,120,130,110)[單選題]129.在公有派生的情況下,派生類中定義的成員函數(shù)只能訪問原基類的()。A)公有成員和私有成員B)私有成員和保護(hù)成員C)公有成員和保護(hù)成員D)私有成員、保護(hù)成員和公有成員[單選題]130.在C++中,實現(xiàn)封裝性需借助于()。A)枚舉B)類C)數(shù)組D)函數(shù)[單選題]131.使用重載函數(shù)編程序的目的是()。A)使用相同的函數(shù)名調(diào)用功能相似的函數(shù)B)共享程序代碼C)提高程序的運行速度D)節(jié)省存貯空間[單選題]132.已知有如下定義:structDate{intyear,month,day;};structstudent{intnum;charname[80];Datebirthday;};則下列語句錯誤的是________。A)studentstud[2]={1,"Wangli",2001,12,3,4,"Zhangmei",2001,9,4};B)studentstud[2]={1,"Wangli",{2001,12,3},4,"Zhangmei",{2001,9,4}};C)studentstud[2]={1,"Wangli",2001,12,4,"Zhangmei",2001,9,4};D)studentstud[2]={1,"Wangli",{2001,12},4,"Zhangmei",{2001,9,4}};[單選題]133.對于友元描述正確的是()A)友元是本類的成員函數(shù)B)友元不是本類的成員函數(shù)C)友元不是函數(shù)D)友元不能訪問本類私有成員[單選題]134.以下說法中正確的是()。A)C++程序總是從第一個定義的函數(shù)開始執(zhí)行B)C++程序總是從main函數(shù)開始執(zhí)行C)C++函數(shù)必須有返回值,否則不能使用函數(shù)D)C++程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個程序文件中[單選題]135.下列程序中說明的公有成員是()。classLocation{intX;public:voidinit(intX,intY);private:intY;public:intGetX();intGetY();}A)XB)init(intX,intY)C)GetX(),GetY()D)B和C都是[單選題]136.下列關(guān)于函數(shù)的說法中,正確的是________。A)C++允許在函數(shù)體中定義其他函數(shù)B)所有的內(nèi)聯(lián)函數(shù)都要用inline說明C)僅函數(shù)返回類型不同的同名函數(shù)不能作為重載函數(shù)使用D)形參的默認(rèn)值應(yīng)從左至右逐個依次給出[單選題]137.下列不是異常處理中需要用到的標(biāo)識符是()。A)tryB)catchC)throwD)go[單選題]138.直接插入排序的平均時間復(fù)雜度為()。A)O(logn)B)O(n)C)O(nlogn)D)O(n2)[單選題]139.正確的C++語言標(biāo)識符是()。A)3d_maxB)ifC)A&D)sum_2[單選題]140.設(shè)一個鏈表最常用的操作是在末尾插入結(jié)點和刪除尾結(jié)點,則選用什么最節(jié)省時間A)單鏈表B)單循環(huán)鏈表C)帶尾指針的單循環(huán)鏈表D)帶頭結(jié)點的雙循環(huán)鏈表[單選題]141.下面哪個標(biāo)識符不是內(nèi)存管理函數(shù)?()A)mallocB)callocC)freeD)goto[單選題]142.對于長度為n的有序順序表,若采用折半搜索,則對所有元素的搜索長度中最大的為()的值的向下取整加一。A)log2(n+1)B)log2nC)n/2D)(n+1)/2[單選題]143.閱讀下面代碼,輸出結(jié)果為()intmain(){charstr1[]="abc";charstr2[]="abc";constcharstr3[]="abc";constcharstr4[]="abc";constchar*str5="abc";constchar*str6="abc";coutA)truefalsetrueB)falsetruetrueC)falsefalsefalseD)falsefalsetrue[單選題]144.以下敘述不正確的是()。A)在不同的函數(shù)中可以使用同名的變量B)函數(shù)中的形式參數(shù)是局部變量C)在函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效D)在函數(shù)內(nèi)復(fù)合語句中定義的變量也可在本函數(shù)范圍內(nèi)有效[單選題]145.下面程序執(zhí)行結(jié)果:usingnamespacestd;classA{public:virtualvoidf(){cout<<"A::f()";}voidf()const{cout<<"A::f()const";}};classB:publicA{public:voidf(){cout<<"B::f()";}voidf()const{cout<<"B::f()const";}};voidg(constA*a){a->f();}intmain(intargc,char*argv[]){A*p=newB();p->f();g(p);delete(p);return0;}A)B::f()B::f()constB)B::f()A::f()constC)A::f()B::f()constD)A::f()A::f()const[單選題]146.一個類的靜態(tài)數(shù)據(jù)成員所表示屬性()。A)是類的或?qū)ο蟮膶傩訠)只是對象的屬性C)只是類的屬性D)類和友元的屬性[單選題]147.以下定義內(nèi)聯(lián)函數(shù)f()的語句,正確的是()。A)inlinevoidf();voidf(){}B)voidf();inlinevoidf(){}C)voidf():inline;voidf(){}D)voidf();voidf():inline{}"[單選題]148.指出下列對定義重載函數(shù)的要求中,()是錯誤的。A)要求參數(shù)的個數(shù)相同B)要求參數(shù)的類型相同時,參數(shù)個數(shù)不同C)函數(shù)的返回值可以不同D)要求參數(shù)的個數(shù)相同時,參數(shù)類型不同[單選題]149.語句ofstreamf(?TEMP.DAT?,ios::app|ios::binary)?的功能是建立流對象f,試圖打開文件TEMP.DAT并與之連接,并且()A)若文件存在,將文件寫指針定位于文件尾;若文件不存在,建立一個新文件B)若文件存在,將其置為空文件;若文件不存在,打開失敗C)若文件存在,將文件寫指針定位于文件首;若文件不存在,建立一個新文件D)若文件存在,打開失敗;若文件不存在,建立一個新文件[單選題]150.與二進(jìn)制數(shù)101.01011等值的十六進(jìn)制數(shù)為()。A)BB)5.51C)51D)5.58[單選題]151.下列有關(guān)C++流的敘述中,錯誤的是()。A)C++操作符setw設(shè)置的輸出寬度永久有效B)C++操作符endl可以實現(xiàn)輸出的回車換行C)處理文件I\O時,要包含頭文件fstreamD)進(jìn)行輸入操作時,eof()函數(shù)用于檢測是否到達(dá)文件尾[單選題]152.下列循環(huán)語句的循環(huán)次數(shù)是________。while(inti=0)i--;A)0B)1C)2D)3[單選題]153.數(shù)據(jù)結(jié)構(gòu)中,對于希爾排序的組內(nèi)排序采用的方式是。A)冒泡排序B)折半插入排序C)快速排序D)以上都不對[單選題]154.下列關(guān)于return語句的敘述中,正確的是()。A)任何函數(shù)的函數(shù)體中至少有一個return語句B)任何函數(shù)的函數(shù)體中最后一條語句必須是return語句C)如果函數(shù)的返回類型為void,則其函數(shù)體中可以沒有return語句D)如果函數(shù)的返回類型為int,則其函數(shù)體中可以沒有return語句[單選題]155.對于表達(dá)式boolx=5;inta=x==5;變量a的值為()。A)1B)0C)5D)false[單選題]156.以下選項中,不合法的字符常量是()。A)?\n?B)?\xf?C)?\0?D)?\045?第2部分:多項選擇題,共16題,每題至少兩個正確答案,多選或少選均不得分。[多選題]157.數(shù)據(jù)結(jié)構(gòu)中,排序算法不穩(wěn)定的有哪些A)快速排序B)冒泡排序C)直接插入排序D)希爾排序[多選題]158.下列關(guān)于直接插入排序法的說法不正確的是A)只能對數(shù)字進(jìn)行排序B)只能對數(shù)字和英文單詞進(jìn)行排序C)可以對漢字進(jìn)行排序D)只能從小到大進(jìn)行排列[多選題]159.下列關(guān)于C++關(guān)鍵字的說法中錯誤的是A)關(guān)鍵字是用戶為程序中各種需要命名的?元素?所起的名字B)關(guān)鍵字是對程序中的數(shù)據(jù)進(jìn)行操作的一類單詞。C)關(guān)鍵字是在程序中起分割內(nèi)容和界定范圍作用的一類單詞D)關(guān)鍵字是C++中預(yù)先定義并實現(xiàn)一定功能得一類單詞。[多選題]160.把一棵樹轉(zhuǎn)換為二叉樹后,這棵二叉樹的形態(tài)的說法不正確的是A)唯一的B)有多種C)有多種,但根結(jié)點都沒有左孩子D)有多種,但根結(jié)點都沒有右孩子[多選題]161.對于折半查找方法,下面的說法正確的是A)折半查找方法不適用于按值有序鏈接的鏈表的查找B)折半查找方法適用于按值有序的順序表的查找C)折半查找方法適用于按關(guān)鍵字值大小有序排列的順序文件的查找D)折半查找方法適用于排序連續(xù)順序文件的查找[多選題]162.C++中下列字符串中可以作為標(biāo)示符的是A)_256B)classC)delete1D)5char[多選題]163.數(shù)據(jù)的運算最常用的是A)插入B)刪除C)修改D)查找[多選題]164.關(guān)于輸出流對象的說法正確的是A)cout標(biāo)準(zhǔn)輸出B)cerr標(biāo)準(zhǔn)錯誤輸出C)clog類似于cerr,而clog中的信息存放在緩沖區(qū)中,緩沖區(qū)滿后或遇endl時向顯示器輸出D)以上說法都正確[多選題]165.數(shù)據(jù)結(jié)構(gòu)中,二叉樹結(jié)點和說法正確的是A)二叉樹中每個結(jié)點的兩棵子樹的高度差等于1B)二叉樹中每個結(jié)點的兩棵子樹是有序的。C)二叉樹中每個結(jié)點有兩棵非空子樹或有兩棵空子樹。D)具有12個結(jié)點的完全二叉樹有5個度為2的結(jié)點。[多選題]166.數(shù)據(jù)結(jié)構(gòu)中棧和隊的共同點不包括A)都是先進(jìn)后出B)都是后進(jìn)先出C)只允許在端點處插入和刪除元素D)沒有共同點[多選題]167.下列程序中的橫線處填寫的語句錯誤的是_____A)data=Sample::data;B)data(data);C)this->data=data;D)Sample::data=data;[多選題]168.關(guān)于樹的度的描述正確的是A)樹的度為0的結(jié)點稱為葉子B)樹的度不為0的結(jié)點稱為分支結(jié)點C)樹的度為0的結(jié)點稱為分支結(jié)點D)樹的度不為0的結(jié)點稱為葉子[多選題]169.已知int型變量a,執(zhí)行語句a=?A?+1.6;則以下說法正確的有()。A)變量a為int型B)變量a為浮點型C)程序會出現(xiàn)編譯錯誤D)a的值是字符?A?的ASCII值加上1[多選題]170.一棵樹可轉(zhuǎn)換成為與其對應(yīng)的二叉樹,則下面敘述不正確的是A)樹的先根遍歷序列與其對應(yīng)的二叉樹的先序遍歷相同B)樹的后根遍歷序列與其對應(yīng)的二叉樹的后序遍歷相同C)樹的先根遍歷序列與其對應(yīng)的二叉樹的中序遍歷相同D)只有A正確[多選題]171.樹形結(jié)構(gòu)中根結(jié)點、葉子結(jié)點等的說法正確的是A)在樹形結(jié)構(gòu)中,樹根結(jié)點沒有前驅(qū)結(jié)點B)樹形結(jié)構(gòu)中除根結(jié)點外,每個結(jié)點有且只有1個前驅(qū)結(jié)點C)葉子點沒有后續(xù)結(jié)點D)除葉子結(jié)點外,其余每個結(jié)點的后續(xù)結(jié)點數(shù)可以任意多個[多選題]172.以下關(guān)于函數(shù)指針說法正確的是()。A)1個函數(shù)的函數(shù)名就是該函數(shù)的入口地址B)函數(shù)指針變量不能進(jìn)行算術(shù)運算C)可以用如下形式定義1個函數(shù)指針變量:int*pf()D)假設(shè)有1個函數(shù)指針pf和1個函數(shù)f(),則可以用如下形式給函數(shù)指針賦值:pf=f()第3部分:填空題,共12題,請在空白處填寫正確答案。[填空題]173.作為語句標(biāo)號使用的C++保留字case和default只能用于________語句的定義體中[填空題]174.若要把整型變量y定義為x的引用,則所使用的定義語句為_______。[填空題]175.每個對象都是所屬類的一個___。[填空題]176.C++中當(dāng)一個函數(shù)無返回值時,則函數(shù)的類型是()。[填空題]177.C++程序必須有且只有一個主函數(shù),其函數(shù)名為______。[填空題]178.決定C++語言中函數(shù)的返回值類型的是()A)return語句中的表達(dá)式類型B)調(diào)用該函數(shù)時系統(tǒng)隨機(jī)產(chǎn)生的類型C)調(diào)用該函數(shù)時的主調(diào)用函數(shù)類型D)在定義該函數(shù)時所指定的數(shù)據(jù)類[填空題]179.變量分為全局和局部兩種,()。變量沒有賦初值時,其值是不確定的。[填空題]180.假定一個類的構(gòu)造函數(shù)為A(intaa,intbb){a=aa--;b=a*bb;},則執(zhí)行Ax(4,5);語句后,x.a和x.b的值分別為()A)3和15B)5和4C)4和20D)20和5[填空題]181.vector類中用于刪除向量中的所有對象的方法是___。[填空題]182.下面敘述不正確的是()A)派生類一般都用公有派生B)對基類成員的訪問必須是無二義性的C)賦值兼容規(guī)則也適用于多重繼承的組合D)基類的公有成員在派生類中仍然是公有[填空題]183.C++程序的源文件擴(kuò)展名為___。[填空題]184.C++語言中如果調(diào)用函數(shù)時,需要改變實參或者返回多個值,應(yīng)該采取___方式。第4部分:判斷題,共29題,請判斷題目是否正確。[判斷題]185.棧和隊列的存儲方式既可是順序方式,也可是鏈接方式A)正確B)錯誤[判斷題]186.進(jìn)行折半搜索的表必須是順序存儲的有序表A)正確B)錯誤[判斷題]187.樹中任意結(jié)點的子樹不必是有序的A)正確B)錯誤[判斷題]188.()抽象類不能做函數(shù)的參數(shù)類型,也不能作為函數(shù)的返回類型。A)正確B)錯誤[判斷題]189.goto語句可以指向一段代碼中的任意行。[判斷題]190.當(dāng)待排序的元素很大時,為了交換元素的位置,移動元素要占用較多的時間,這是影響時間復(fù)雜度的主要因素。A)正確B)錯誤[判斷題]191.一個包含循環(huán)結(jié)構(gòu)的函數(shù)不可以定義為內(nèi)聯(lián)函數(shù)。A)正確B)錯誤[判斷題]192.函數(shù)參數(shù)傳遞過程中實參類型需要與形參相同()A)正確B)錯誤[判斷題]193.constchar*p說明了p是指向字符串的常量指針。[判斷題]194.C++語言中,包含字符串常用函數(shù)的類文件是string.h[判斷題]195.以下程序的輸出結(jié)果為3。()inta[2][2]={1,2,3,4};printf(""%d\n"",a[1][0]);"[判斷題]196.定義數(shù)組時沒有初始化,此時數(shù)組元素的值是不確定的。A)正確B)錯誤[判斷題]197.已知有如下代碼片段#defineM(x)x*xnta=3;intb=M(a+1);宏展開后是:b=3+1*3+1=7則變量a的值為16。()[判斷題]198.使用數(shù)組時,數(shù)組元素的下標(biāo)可以不從0開始。A)正確B)錯誤[判斷題]199.線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)優(yōu)于順序存儲。A)正確B)錯誤[判斷題]200.具有10個葉結(jié)點的二叉樹中,有9個度為2的結(jié)點()A)正確B)錯誤[判斷題]201.快速排序的最好時間復(fù)雜度是O(n^2)A)正確B)錯誤[判斷題]202.C語言出現(xiàn)的早期主要用于UNIX系統(tǒng)[判斷題]203.當(dāng)break語句用在雙重循環(huán)的內(nèi)循環(huán)中時,它只能退出內(nèi)循環(huán)到外循環(huán)中去,而不能直出整個雙重循環(huán)[判斷題]204.構(gòu)造函數(shù)是非成員函數(shù)。()A)正確B)錯誤[判斷題]205.動態(tài)查找表和靜態(tài)查找表的重要區(qū)別在于前者包含有插入和刪除運算,而后者不包含這兩種運算。A)正確B)錯誤[判斷題]206.哈希表中,關(guān)鍵字能夠唯一的確定一條記錄[判斷題]207.隊列在程序調(diào)用時必不可少,因此遞歸離不開隊列()A)正確B)錯誤[判斷題]208.線性表就是順序存儲的表()A)正確B)錯誤[判斷題]209.集合與線性表的區(qū)別在于是否按關(guān)鍵字排序()A)正確B)錯誤[判斷題]210.類的私有成員只能被類中的成員函數(shù)訪問,任何類以外的函數(shù)對它們的訪問都是非法的。[判斷題]211.把int型的變量轉(zhuǎn)換為double型的變量不需要進(jìn)行顯式的類型轉(zhuǎn)換說明[判斷題]212.()公有繼承時,派生類繼承了基類的所有成員。A)正確B)錯誤[判斷題]213.靜態(tài)類標(biāo)識符在它的作用域之外是不存在的第5部分:問答題,共47題,請在空白處填寫正確答案。[問答題]214.對象的___只能由這個對象的操作來存取[問答題]215.給出下面程序的輸出結(jié)果#include<iostream>usingnamespacestd;classA{15public:intx;A(){}A(inta){x=a;}intget(inta){returnx+a;}};voidmain(){Aa(8);int(A::*p)(int);p=A::get;cout<<(a.*p)(5)<<endl;A*pi=&a;cout<<(pi->*P)(7)<<endl;}[問答題]216.對于下列函數(shù)定義,說法正確的是()。voidfun1(){intvar1=2,var2=3;int*p=&var1,*q=&var2;p=q;}voidfun2(){intvar1=2,var2=3;int&p=var1,&q=var2;p=q;}(a)fun1與fun2的作用完全相同。(b)運行fun1后p、q中均存放var2的地址;運行fun2后p、q均為var2的別名。(c)運行fun1后p中存放var1的地址,q中存放var2的地址;運行fun2后p為var1的別名,q為var2的別名。(d)運行fun1后p、q中均存放var2的地址;運行fun2后p為var1的別名,q為var2的別名。[問答題]217.如何引用一個已經(jīng)定義過的全局變量?[問答題]218.請寫出下列程序的運行結(jié)果#include<iostream.h>classWin{public:virtualvoidshape(){cout<<"Win"<<endl;}voidact(){shape();}};classBut:publicWin{public:virtualvoidshape(){cout<<"But"<<endl;}};voidmain(){Win*p1,w1;Butb1;w1.act();b1.act();p1=&w1;p1->shape();p1=&b1;p1->shape();p1->act();}[問答題]219.總結(jié)const的應(yīng)用和作用?[問答題]220.試建立一個類SP,求,另有輔助函數(shù)power(m,n)用于求。具體要求如下:(1)私有成員數(shù)據(jù)。intn,k:存放公式中n和k的值;(2)公有成員函數(shù)。SP(intn1,intk1):構(gòu)造函數(shù),初始化成員數(shù)據(jù)n和power(intm,intn):求fun():求公式的累加和。voidshow():輸出求得的結(jié)果。(3)在主程序中定義對象s,對該類進(jìn)行測試。[問答題]221.對象成員是指該對象所屬類中定義的成員,包括數(shù)據(jù)成員和[問答題]222.下列程序的輸出結(jié)果第一行是________,第二行是______,第三行是________。#includeusingnamespacestd;inta=5;voidfun(inta){::a-=--a;cout[問答題]223.在C++類中可以包含_____、______和三種具有不同訪問控制權(quán)的成員。[問答題]224.簡述C++的主要特點以及C++與C語言語法上的不同之處。[問答題]225.運行下列程序結(jié)果為________________________。#include<iostream.h>constdoublePI=3.14159;classcircle{doubler;public:staticintnum;circle(double);circle(circle&);doublegetr();};circle::circle(doublei){r=i;}circle::circle(circle&c){num++;cout<<"第"<<num<<"次調(diào)用拷貝構(gòu)造函數(shù)!"<<endl;r=c.r*num;}doublecircle::getr(){returnr;}doublegetradius(circlec3){returnc3.getr();}circlefun1(){circlec4(5);returnc4;}intcircle::num=0;voidmain(){circlec1(1);cout<<"c1:"<<c1.getr()<<endl;circlec2(c1);cout<<"c2:"<<c2.getr()<<endl;cout<<"c3:"<<getradius(c1)<<endl;circlec4(1);c4=fun1();cout<<"c4:"<<c4.getr()<<endl;}[問答題]226.下列說法正確的是()。(a)數(shù)組可以存放不同類型的元素。(b)定義inta[2];,則數(shù)組a有兩個數(shù)組元素。(c)定義inta[3];,則該數(shù)組中元素分別為:a[0],a[1],a[2],a[3]。(d)在編譯時,不必確定數(shù)組的大小。[問答題]227.以下程序的功能是判斷一個數(shù)是否為素數(shù)。請?zhí)羁铡?include<iostream.h>voidmain(){intnum;cout<<"輸入一個正整數(shù):";_________①________;intisprime=1;for(inti=2;i<=num-1;i++)if(________②________){isprime=0;______③______;}if(isprime)cout<<num<<"是一個素數(shù)。"<<endl;elsecout<<num<<"不是一個素數(shù)。"<<endl;}[問答題]228.流運算符為什么不能通過類的成員函數(shù)重載?一般怎么解決?[問答題]229.下列程序的輸出結(jié)果是________。#includeusingnamespacestd;voidfun(inta,int&b){a=a*a;b=b+b;}intmain(){intx,y;x=2;y=3;fun(x,y);cout[問答題]230.以下程序的運行結(jié)果為)。#include<iostream>Usingnamespacestd;Inta{5};Intmain(){{inta{2};cout<<::a;cout<<a;}cout<<a<<endl;return0;}[問答題]231.程序分析題:閱讀程序后,填寫程序的正確運行結(jié)果。1/1文字題請寫出myText1.txt文本文件中的內(nèi)容。[問答題]232.#if!defined(AFX_?_HADE_H)#define(AFX_?_HADE_H)??#endif作用?[問答題]233.如果一個派生只有一個唯一的基類,則這樣的繼承關(guān)系稱為。[問答題]234.構(gòu)造函數(shù)的調(diào)用順序是什么?[問答題]235.在開發(fā)C++程序的過程中,編輯、編譯、連接的作用是什么?[問答題]236.古典問題:有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三個月后每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數(shù)為多少?[問答題]237.下列程序的輸出結(jié)果是________。#includeusingnamespacestd;voidfun(double&area,double&circumference,doubler){constdoublePI=3.14;area=PI*r*r;circumference=2*PI*r;}intmain(){doubler,a,c;cin>>r;fun(a,c,r);cout[問答題]238.C++中類型為private的成員變量可以由哪些函數(shù)訪問?[問答題]239.編寫函數(shù),將給定的字符串的大寫字母轉(zhuǎn)變成小寫字母;其它字符不變。主函數(shù)輸入一個字符串,調(diào)用該函數(shù)對其進(jìn)行轉(zhuǎn)換,分別輸出原串和轉(zhuǎn)換之后的串。[問答題]240.C++程序函數(shù)體中數(shù)據(jù)聲明和語句后面必須有()[問答題]241.運行下列程序的結(jié)果為var1=300,var2=400var1=①_,var2=_②_。#include<iostream.h>voidoutput(intvar1,intvar2){cout<<"var1="<<var1<<",var2="<<var2<<endl;var1=100;var2=200;}voidmain(){intvar1=300;intvar2=400;output(var1,var2);cout<<"var1="<<var1<<",var2="<<var2<<endl;}[問答題]242.關(guān)于棧的數(shù)據(jù)結(jié)構(gòu)的描述正確的是?A)先進(jìn)先出B)先進(jìn)后出[問答題]243.判定2000-2500年中的每一年是否為閏年,將結(jié)果輸出。(判定條件:1.能被4整出但不能被100整除的年份是閏年。2.能被100整除又能被400整除的年份是閏年.)[問答題]244.有如下程序:#include<iostream.h>classA{public:A(){cout<<"A";}};classB{public:B(){cout<<"B";}};classC:publicA{Bb;public:C(){cout<<"C";}};intmain(){Cobj;return0;}執(zhí)行后的輸出結(jié)果是()。(a)CBA(b)BAC(c)ACB(d)ABC[問答題]245.(填空題)寫出下列程序的運行結(jié)果:#include<iostream>Usingnamespacestd;Voidf(int&m,intn){inttemp;temp=m;m=n;n=temp;}Intmain(){inta=5,b=10;f(a,b);cout<<a<<""<<b<<endl;return0;}[問答題]246.有如下程序:#include<iostream.h>classbase1{public:base1(){cout<<"base1constructing"<<endl;}~base1(){cout<<"base1destrutcting"<<endl;}};classbase2{public:base2(){cout<<"base2constructing"<<endl;}~base2(){cout<<"base2destrutcting"<<endl;}};classbase3{public:base3(){cout<<"base3constructing"<<endl;}~base3(){cout<<"base3destrutcting"<<endl;}};classderive:publicbase1,virtualpublicbase2,virtualpublicbase3{public:derive(){cout<<"constructingderive"<<endl;}~derive(){cout<<"destructingderive"<<endl;}};voidmain(){derived1;}運行該程序結(jié)果為_________________________。[問答題]247.C++編譯器自動為類產(chǎn)生的四個缺省函數(shù)是什么?[問答題]248.windows系統(tǒng)中查看網(wǎng)卡信息使用哪個指令?A)ifconfigB)ipconfig[問答題]249.編程實現(xiàn):對鍵盤輸入的任意一個四位正整數(shù),計算各位數(shù)字平方和。[問答題]250.在C++中,判斷一個邏輯量是否為?真?時,采取的標(biāo)準(zhǔn)是:如果其值是0就認(rèn)為是?假?,如果其值是()就認(rèn)為是?真?。[問答題]251.下列語句正確的是()。(a)int*p=0;(b)intvar1=100,*p=var1;//cannotconvertfrom'int'to'int*'(c)intvar1=100;char*p=&var1;//cannotconvertfrom'int*'to'char*'(d)intvar1=100,*q;void*p=&var1;q=p;//cannotconvertfrom'void*'to'int*'[問答題]252.定義字符指針char*s="hello",已知sizeof(s)=4,則strlen(s)=__1__。(填空題)[問答題]253.完成程序題:請按試題順序和空格順序填寫答案。求兩個浮點數(shù)之差的cha函數(shù)的原型聲明、調(diào)用方法。1/1文字題#include<iostream>usingnamespacestd;voidmain(){floata,b;_____________;//函數(shù)cha的原型聲明a=12.5;b=6.5;floatc=_______________;//調(diào)用函數(shù)chacout<<c<<endl;}floatcha(floatx,floaty){floatw;w=x-y;returnw;}[問答題]254.++和--運算符只能用于_()___,而不能用于常量或表達(dá)式。[問答題]255.常用的算法表示方法有:自然語言、_()____、_()____、計算機(jī)語言等。[問答題]256.下列說法正確的是()。(a)基類的構(gòu)造函數(shù)和析構(gòu)函數(shù)不能被派生類繼承。(b)在派生類中用戶必須自定義派生類構(gòu)造函數(shù)。(c)析構(gòu)函數(shù)與構(gòu)造函數(shù)被調(diào)用的順序是一致的。(d)在多重繼承中,多個基類的構(gòu)造函數(shù)的調(diào)用順序由定義派生類構(gòu)造函數(shù)時指定的初始化表中的次序決定。[問答題]257.編寫一個程序完成字符串比較。當(dāng)兩個字符串長度相等時,對其中各個字符進(jìn)行比較,比到第一個不相等的字符為止,字符大的該字符串就大;若兩個字符串長度不等,則長度小的字符串小;當(dāng)兩個字符串長度相等,對應(yīng)位字符也相等時,兩個字符串相等。[問答題]258.定義以下變量并假設(shè)已賦確定的值:?charw;intx;floaty;doublez;?,則表達(dá)式?w*x+z-y?的數(shù)據(jù)類型是___[問答題]259.寫一個程序根據(jù)從鍵盤輸入的里氏強度顯示地震的后果。根據(jù)里氏強度地震的后果如下:里氏強度后果小于4很小4.0到5.0窗戶晃動5.0到6.0墻倒塌;不結(jié)實的建筑物被破壞6.0到7.0煙囪倒塌;普通建筑物被破壞7.0到8.0地下管線破裂;結(jié)實的建筑物也被破壞超過8.0地面波浪狀起伏;大多數(shù)建筑物損毀**輸入格式要求:實數(shù),提示信息:cout<<"請輸入地震的里氏強度:"<<endl;**輸出格式要求:"本次地震后果:很?。?"本次地震后果:窗戶晃動!""本次地震后果:墻倒塌;不結(jié)實的建筑物被破壞!""本次地震后果:煙囪倒塌;普通建筑物被破壞!""本次地震后果:地下管線破裂;結(jié)實的建筑物也被破壞!""本次地震后果:地面波浪狀起伏;大多數(shù)建筑物損毀!"[問答題]260.[訪問聲明]有下列類定義:ClassA{public:voidprint(){cout<<"A"<<endl;}};ClassB:privateA{public:A::print;};則下列程序:Intmain(){Bb1;b1.print();return0;}A)輸出字符AB)語法錯誤,不能訪問類的私有成員1.答案:B解析:2.答案:D解析:3.答案:B解析:4.答案:A解析:B選項中,表達(dá)式a+1不是非法的;C選項中,*(a+1)即指a[1];D選項中,*&a[1]不是非法的。因此A選項正確。5.答案:C解析:6.答案:D解析:7.答案:D解析:8.答案:C解析:9.答案:D解析:10.答案:B解析:11.答案:D解析:12.答案:C解析:13.答案:B解析:14.答案:C解析:15.答案:A解析:16.答案:B解析:17.答案:C解

溫馨提示

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

評論

0/150

提交評論