




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
試卷科目:C++開發基礎C++開發基礎(習題卷10)PAGE"pagenumber"pagenumber/SECTIONPAGES"numberofpages"numberofpagesC++開發基礎第1部分:單項選擇題,共156題,每題只有一個正確答案,多選或少選均不得分。[單選題]1.當一個類A中沒有聲明任何成員變量與成員函數,sizeof(A)的值是多少?A)0B)1C)4[單選題]2.對重載函數形參的描述中,錯誤的是()。A)參數的個數可能不同B)參數的類型可能不同C)參數的順序可能不同D)參數的個數、類型、順序都相同,只是函數的返回值類型不同[單選題]3.以下代碼片段的輸出結果是。()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)表達式a+1是非法的C)三個表達式a[1]、*(a+1)、&a[1]代表的變量互不相同D)表達式*&a[1]是非法的,應該寫成*(&(a[1]))[單選題]5.下列為文件的擴展名,能被計算機直接執行的是()。A)cppB)oC)exeD)h[單選題]6.下列對派生類的描述中錯誤的說法是:()。A)派生類至少有一個基類B)派生類可作為另一個派生類的基類C)派生類除了包含它直接定義的成員外,還包含其基類的成員D)派生類所繼承的基類成員的訪問權限保持不變[單選題]7.以下描述錯誤的是_________A)無論何種繼承方式,在派生類內部均不可以直接訪問基類的私有成員;B)無論何種繼承方式,在派生類內部均可以直接訪問基類的公有成員。C)無論何種繼承方式,在派生類內部均可以直接訪問基類的保護成員。D)通過派生類對象,可以直接訪問以公有繼承方式繼承的基類的公有成員和保護成員。[單選題]8.若有以下函數首部,則下面針對此函數的函數聲明語句中正確的是________。intfun(doublex[10],int*n)A)intfun(doublex,int*n);B)intfun(doublex,intn);C)intfun(double*,int*);D)intfun(double*,int&);[單選題]9.循環隊列存儲在數組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;則表達式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碼(含擴展ASCII碼)可以用一個字節表示,則可以表示的ASCII碼值個數為_____。(題)A)1024B)512C)256D)128[單選題]13.[默認繼承方式]有類定義如下:ClassA{};classB{};ClassC:publicA,B{};則下列說法正確的是:A)C類公有繼承了A類和B類B)C類公有繼承A類,私有繼承B類C)語法錯誤,一個類不能繼承兩個類D)語法錯誤,繼承時必須寫明繼承方式[單選題]14.在下列成對的表達式中,運算符?+?的意義不相同的一對是()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.下列控制格式輸入輸出的操作符中,能夠設置浮點數精度的是A)setprecisionB)showpointC)setfillD)setw[單選題]16.判斷字符型變量ch是否為大寫英文字母,應使用表達式()。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.設某棵二叉樹中有2000個結點,則該二叉樹的最小高度為A)9B)10C)11D)12[單選題]19.函數fun計算prod=1*2*3*…*n,并返回計算結果值。但當n=100時,程序不正確。要找出該程序的錯誤,正確的調試方法是()。intfun(intn){intprod,i;prod=1;for(i=1;i<=n;i++)prod*=i;returnprod;}A)監視變量prod的值,在prod*=i;行處設置斷點,然后單步運行,直到發現錯誤原因B)監視變量prod的值,在returnprod;行處設置斷點,程序中斷后,即可發現錯誤原因C)在prod=1;處設置斷點,然后在函數調用堆棧中即可發現錯誤原因D)監視變量i的值,在for(i=1;i[單選題]20.在C++語言中,自定義的標識符()。A)能使用關鍵字并且區分大小寫B)不能使用關鍵字并且區分大小寫C)能使用關鍵字并且不區分大小寫D)不能使用關鍵字并且不區分大小寫[單選題]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.下列函數中,不能重載運算符的函數是()。A)成員函數B)構造函數C)普通函數D)友員函數[單選題]24.#includeusingnamespacestd;classDATA{DATA(inta,intb)//1{x=a;y=b;}voidshow(){cout<A)第1行開始的構造函數定義語法有錯誤B)第2行中不能直接訪問x和yC)第3行建立obj對象時,無法調用構造函數D)第4行obj可以調用show函數[單選題]25.以下哪個不是容器操作函數()A)assignB)swapC)eraseD)length[單選題]26.二叉樹T的前序遍歷序列和中序遍歷序列分別是bdcaef和cdeabf,則其后序遍歷序列為A)ceadfbB)feacdbC)eacdfbD)以上都不對[單選題]27.二叉樹是非線性數據結構,所以()。A)它不能用順序存儲結構存儲B)它不能用鏈式存儲結構存儲C)順序存儲結構和鏈式存儲結構都能存儲D)順序存儲結構和鏈式存儲結構都不能使用[單選題]28.有如下語句序列:Intk=0;Do{k+=5;cout<<'$';}while(k<19);While(k-->0)cout<<'*';執行上面的語句序列輸出字符$和*的個數分別是()。A)4和20B)5和20C)4和21D)5和21[單選題]29.關于字符常量的寫法,錯誤的是()。A)"a"B)'/'C)'\0'D)'\a'[單選題]30.一個函數為voidx(int,charch=?a?),另一個函數為voidx(int),則它們________。A)可以在同一程序中定義,但不可以重載B)不能在同一程序中定義C)可以在同一程序中定義并可重載D)以上說法均不正確[單選題]31.map的底層數據結構是?A)數組B)鏈表C)紅黑樹D)哈希表[單選題]32.以下描述對應哪種排序算法:對待排序進行劃分為左、右兩個子序列,對兩個子序列進行同樣的排序操作,直到子序列為空或只剩下一個元素為止。A)冒泡排序B)折半插入排序C)快速排序D)希爾排序[單選題]33.有定義如下:inta[5],*p=a;則下列描述錯誤的是_______。A)表達式p=p+1是合法的B)表達式a=a+1是合法的C)表達式p-a是合法的D)表達式a+2是合法的[單選題]34.內聯函數的特點是()A)減少代碼量,加快訪問速度B)減少代碼量,減緩訪問速度C)增加代碼量,減緩訪問速度D)增加代碼量,加快訪問速度[單選題]35.下列設置函數參數默認值的說明語句中,錯誤的是______。A)intfun(intx,inty=10)B)intfun(intx=5,int=10)C)intfun(intx=5,inty)D)intfun(intx,inty=a+b)[單選題]36.運行如下程序段,輸出結果是()。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.有如下函數定義:voidfunc(inta,int&b){a++;b++;}若執行代碼段:intx=0,y=1func(x,y);則變量x和y值分別是()A)0和1B)1和1C)0和2D)1和2[單選題]38.函數intsum(inta=10,intb=15,intc=25);不可與下列哪個函數同時聲明()A)intsum(int,int,int,int)B)intsum(int,int,int)C)intsum(double)D)intsum(double,double,double);[單選題]39.遞歸函數中的形參是()A)自動變量B)外部變量C)靜態變量D)可根據需要自定義存儲類型[單選題]40.一棵有n個結點的二叉樹,按層次從上到下,同一層從左到右順序存儲在一維數組A[1..n]中,則二叉樹中第i個結點(i從1開始用上述方法編號)的右孩子在數組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;則數值不為3的表達式是________。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個指針數組,該數組有3個元素,每個元素都是int類型的指針變量C)定義了1個名為*p的int類型數組,該數組含有3個int類型的變量D)定義了1個指向一維數組的指針變量p,該一維數組有3個int類型的元素[單選題]44.已知intx=5,y=5,z=5;執行語句x%=y+z;后,x的值是()。A)0B)5C)6D)1[單選題]45.若已經聲明了函數原型"voidfun(intA,doubleb=0.0);",則下列重載函數聲明中正確的是()。A)voidfun(inta=90,doubleb=0.0);B)intfun(intA,doubleB);C)voidfun(doubleA,intB);D)boolfun(intA,doubleb=0.0);[單選題]46.執行如下語句,輸出結果為()Charstr[]="Beijing";Cout<<strlen(strcpy(str,"China"));A)5B)7C)8D)12[單選題]47.下列有關函數定義和調用的敘述中,錯誤的是________。A)一個函數必須定義后才能使用B)在一個函數體內可以定義另一個函數C)用戶定義的函數可以被一個和多個函數調用任意多次D)一般要求在函數調用時,實參的個數和類型必須與形參的個數和類型一致[單選題]48.對于"int*pa[5];"的描述中正確的是A)pa是一個指向數組的指針,所指向的數組是5個int型元素B)pa是一個指向某數組中第5個元素的指針,該元素是int型變量C)pa[5]表示某個元素的第5個元素的值D)pa是一個具有5個元素的指針數組,每個元素是一個int型指針[單選題]49.C++對C語言作了很多改進,下列描述中()使得C語言發生了質變,從面向過程變成了面向對象。A)增加了一些新的運算符;B)允許函數重載,并允許設置缺省參數;C)規定函數說明必須用原型;D)引進了類和對象的概念;[單選題]50.下列字符串可以用做C++標識符的是()。A)A123B)foo~barC)caseD)3var[單選題]51.下列有關函數的說法正確的是()。A)在C++語言中,若對函數類型未加說明,則系統隱含類型為void。B)C++函數必須有返回值,否則無法使用。C)C++函數既可以嵌套定義,又可以可遞歸調用。D)C++函數中,形式參數必須指定為確定的類型。[單選題]52.友員的作用之一是()A)提高程序的運行效率B)加強類的封裝C)實現數據的隱蔽性D)增加成員函數的種類[單選題]53.有如下語句序列:ifstreaminfile("DATA.DAT");if(infile.good())cout<<"A";else{cout<<"B";ofstreamoutfile("DATA.DAT");if(outfile.fail())cout<<"C";elsecout<<"D";}若執行這個語句序列顯示的是BD,則說明文件DATA.DAT________。A)以讀方式打開成功B)以讀方式打開失敗,但以寫方式打開成功C)以讀方式打開失敗,以寫方式打開也失敗D)以讀方式打開成功,以寫方式打開也成功[單選題]54.以下有關C語言的說法中,錯誤的是()。A)內存泄露一般是指程序申請了一塊內存,使用完后,沒有及時將這塊內存釋放,從而導致程序占用大量內存。B)可以通過malloc(size_t)函數調用申請超過該機器物理內存大小的內存塊。C)無法通過內存釋放函數free(void*)直接將某塊已經使用完的物理內存直接還給操作系統。D)可以通過內存分配函數malloc(size_t)直接申請物理內存。[單選題]55.包含自定義頭文件file.h的預處理指令是()A)#define<file.h>B)#includefile.hC)#definefile.hD)#include"file.h"[單選題]56.在C程序的源文件中如果需要使用函數strcpy,需要在該文件開頭引入哪個頭文件()A)iostream.hB)string.hC)math.hD)不需要任何頭文件[單選題]57.假定T是一個C++類,下列語句執行之后,內存里創建了()個T對象。Tb(5);Tc[6];T&d=b;Te=b;T*p=newT(4);A)5B)8C)9D)12[單選題]58.非線性結構是數據元素之間存在一種A)一對多關系B)多對多關系C)多對一關系D)一對一關系[單選題]59.在具有n個結點的有序單鏈表中插入一個新結點并仍然有序的時間復雜度是()A)O(1)B)O(n)C)O(n^2)D)O(nlog2n)[單選題]60.若有定義int*p=newint(0),則下列說法正確的是()A)系統用指針變量p來表示所指整型變量B)聲明一個指針變量p,指向名為new的存儲單元C)系統為指針變量p分配一個整型數據的存儲空間D)通過運算符new,分配一個整型數據的存儲空間,并將其內存地址賦予指針變量[單選題]61.下列關于C++標識符的命名不合法的是()A)PadB)name_1C)A#bcD)_a12[單選題]62.關于以下代碼片段說法正確的是()。inta[5],*pa;pa=a;pa=pa+2;A)pa指向a[2];B)pa的內容是a[0]+2C)pa指向a[0]D)語法有錯誤[單選題]63.要求用成員函數重載的運算符是()。A)=B)==C)<=D)++[單選題]64.給定的一個長度為N的字符串str,查找長度為P(PA)不存在比最壞時間復雜度O(NP)好的算法B)不存在比最壞時間復雜度O(N^2)好的算法C)不存在比最壞時間復雜度O(P^2)好的算法D)存在最壞時間復雜度為O(N+P)的算法[單選題]65.若已定義的函數有返回值,則有關該函數調用的敘述中錯誤的是()。A)函數調用可以作為獨立的語句存在B)函數調用可以作為一個函數的形參C)函數調用可以作為一個函數的實參D)函數調用可以出現在表達式中[單選題]66.對n個元素進行直接插入排序時間復雜度為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.設有一個遞歸函數如下intf(intn){if(nA)6B)7C)8D)9[單選題]69.已知函數f的原型是:voidf(int*a,long&b);變量v1、v2的定義是:intv1;longv2;,正確的調用語句是()。A)f(v1,&v2);B)f(v1,v2);C)f(&v1,v2);D)f(&v1,&v2);[單選題]70.下列()的調用方式是引用調用。A)形參和實參都是變量B)形參是指針,實參是地址值C)形參是引用,實參是變量D)形參是變量,實參是地址值[單選題]71.假設以數組A[m]存放循環隊列的元素,其頭尾指針分別為front和rear,則當前隊列中的元素個數為A)(rear-front+m)%mB)rear-front+1C)(front-rear+m)%mD)(rear-front)%m[單選題]72.在一棵有n個結點的二叉樹中,若度為2的結點數為n2,度為1的結點數為n1,度為0的結點數為n0,則樹的最大高度為A)n0+n1+n2B)n1+n2C)n2+1D)1[單選題]73.下面代碼執行結果為()classA{public:voidB(){coutA)wantfuncptrB)編譯錯誤,A類中沒有成員*func函數C)沒有任何輸出D)不能A::B取地址[單選題]74.若x是一個boo型變量,y是一個值為100的int型變量,則表達式x&&y>0的值()。A)為trueB)為falseC)與x的值相同D)與x的值相反[單選題]75.有如下程序段:……For(inti=1;i<4;i++){If(i%2==0)Continue;Cout<<i<<",";}……其輸出的結果為()。A)1,B)1,3,C)1,3,4,D)1,3[單選題]76.在C++中,容器是一種()A)標準類B)標準對象C)標準函數D)標準類模板[單選題]77.下面是關于派生類聲明的開始部分,其中正確的是________。A)classvirtualB:publicAB)virtualclassB:publicAC)classB:publicAvirtualD)classB:virtualpublicA[單選題]78.一個類可包含析構函數的個數是()A)0個B)1個C)至少一個D)0個或多個[單選題]79.快速排序在下列哪種情況下最易發揮其長處。A)被排序的數據中含有多個相同排序碼B)被排序的數據已基本有序C)被排序的數據完全無序D)被排序的數據中的最大值和最小值相差懸殊[單選題]80.用鏈接方式存儲的隊列,在進行刪除運算時A)僅修改頭指針B)僅修改尾指針C)頭、尾指針都要修改D)頭、尾指針可能都要修改[單選題]81.設有:inta=1,b=2,c=3,d=4,m=2,n=2;執行(m=a>b)&&(n=c>d)后n的值是()A)1B)2C)3D)0[單選題]82.數據結構的二叉鏈表進行樹的存儲時,根結點的右指針是()A)指向最左孩子B)指向最右孩子C)空D)非空[單選題]83.若有定義intx[6]={2,4,6,8,5,7},*p=x,i;要求依次輸出x數組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.流程控制語句的基本控制結構有三種,不屬于這一種結構的是()。A)順序結構B)選擇結構C)循環結構D)計算結構[單選題]85.以下關于C++析構函數的描述中,錯誤的是________。A)析構函數名必須以字符~開B)不可定義析構函數的形式參數C)析構函數由系統自動調用D)可以重載析構函數[單選題]86.若有如下程序:intmain(){inty=3,x=3,z=1;printf("%d%d\n",(++x,y++),z+2);}運行該程序的輸出結果是(A)34B)42C)43D)33[單選題]87.閱讀下列程序,則在執行后,程序的運行結果為()。#include<iostream>"#include<string>Usingnamespacestd;Intmain(){chara[30]="nicetomeetyou!";strcpy(a+strlen(a)/2,"you");cout<<a;return0;}A)nicetomeetyouyouB)nicetoC)meetyouyouD)nicetoyou[單選題]88.以下關于鏈表說法正確的是()。A)鏈表的頭節點中只存放下1個節點的指針B)鏈表的尾節點中不存放指向下1個節點的指針C)刪除鏈表的頭節點與尾節點操作完全相同D)刪除鏈表的頭節點,意味著整個鏈表都被刪除[單選題]89.設有定義:intn=0,*p=&n,**q=&p;則以下選項中,正確的賦值語句是(D)。A)p=1;B)*q=2;C)q=p;D)*p=5;[單選題]90.下面關于類和對象說法不正確是()A)類由數據與函數組成B)一個對象必屬于某個類對象是類的實例C)對象是類的實例D)一個類的對象只有一個[單選題]91.已知:charc='\010';則變量c中包含的字符個數為()。A)4B)1C)2D)3[單選題]92.下列關于C++函數的敘述中,錯誤的是________。A)函數必須有返回值B)一個函數中可以有多條return語句C)在不同的函數中可定義同名的變量D)函數不能嵌套定義,但可以嵌套調用[單選題]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.一個類的成員函數也可以成為另一個類的友元函數,這時的友元說明()。A)需加上類域的限定B)不需加上類域的限定C)類域的限定可加可不加D)不需要任何限定[單選題]96.C++對C語言做了很多改進,即從面向過程變成為面向對象的主要原因是()A)增加了一些新的運算符B)允許函數重載,并允許設置缺省參數C)規定函數說明符必須用原型D)引進了類和對象的概念[單選題]97.設有定義: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;}};主函數代碼:Intmain(){Yy;cout<<y.f()<<endl;return0;}該程序的輸出是:A)0B)1C)10D)y.f()[單選題]99.對函數intmax(inta,intb=0,intc=0,intd=0,inte=0);下列調用方式正確的是()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對象不能轉換為DD&cd=cb;//3B對象不能轉換為D&Bbb=d;//4B類,不能實例化抽象類}則在標出的幾個語句中,沒有錯誤的是()。A)1B)2C)3D)4[單選題]101.假如指針p已經指向整型變量x,則(*p)++相當于________。A)x++B)p++C)*(p++)D)&x++[單選題]102.下列訪問成員的方式哪個是正確的()A)對象名.對象成員名B)對象指針名.對象成員名C)對象名->對象成員名D)類名->對象成員名[單選題]103.下列程序執行后的輸出結果是_____。#include<iostream>Usingnamespacestd;Voidmain(){Intx='f';Cout<<char('A'+(x-'a'+1));}A)GB)HC)ID)J[單選題]104.雙精度浮點型的字節數是()。A)4B)1C)0D)8[單選題]105.若指定有n個元素的向量,則建立一個有序單鏈表的時間復雜性的量級是A)O(1)B)O(n)C)O(n^2)D)O(nlog2n)[單選題]106.類模板的使用實際上是將類模板實例化為1個具體的()。A)類B)對象C)函數D)模板類[單選題]107.下列有關常量、變量的說法錯誤的是()。A)C++語言中變量必須?先定義、后使用?B)使用符號常量可增加程序的可讀性C)定義變量時可以對變量進行初始化D)在程序中可以改變符號常量的值[單選題]108.IO流中ifstream繼承于()類A)ostreamB)istreamC)ofstreamD)iostream[單選題]109.已知x,y,z均為整型變量,且值均為1,則執行語句++x||++y&&++z;后,表達式x+y的值為()A)1B)2C)3D)4[單選題]110.如果inta=1,b=2,c=3,d=4;,則條件表達式aA)2B)3C)4D)1[單選題]111.若有以下定義和語句,則對s數組的元素的正確引用形式是()。ints[4][5],(*ps)[5];ps=s;A)ps+1B)*(ps+3)C)ps[0][2]D)*(ps+1)+3[單選題]112.判斷char型變量c1是否為小寫字母的正確表達式是________。A)'a'<=c1<='z'B)c1>=a&&c1<=zC)'a'>=c1||'z'<=c1D)c1>='a'&&c1<='z'[單選題]113.下列程序段的輸出是________。shortinti=65536;cout<A)65536B)0C)有語法錯誤,無輸出結果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)串中不同字符的個數B)串中不同字母的個數C)串中所含字符的個數D)串中不同數字的個數[單選題]120.用于標識十六進制前綴或后綴是()A)無B)后綴L或eC)前綴零D)前綴0x[單選題]121.如果進棧序列為e1,e2,e3,e4,則不可能的出棧序列是:A)e2,e4,e3,e1B)e4,e3,e2,e1C)e1,e2,e3,e4D)e3,e1,e4,e2[單選題]122.下面程序的輸出結果是()#includeusingnamespacestd;voidfun(intx,inty,intz){z=x*x+y*y;}intmain(){intz=68;fun(5,2,z);coutA)0B)29C)68D)無定值[單選題]123.在C++中,頭文件擴展名為()A)cppB)hC)libD)obj[單選題]124.將一棵有100個結點的完全二叉樹從根這一層開始,每一層上從左到右依次對結點進行編號,根結點的編號為1,則編號為49的結點的左孩子編號為。A)98B)99C)50D)48[單選題]125.設有基類定義:Classbase{Private:inta;protected:intb;public:intc;};為使變量成員b成為派生類的私有成員,可以采用的繼承方式是()A)私有繼承B)公有繼承C)保護繼承D)私有、公有、保護均可[單選題]126.對下列程序,選項中敘述正確的是________。A)程序編譯運行正確B)程序編譯時語句①出錯C)程序編譯時語句②出錯D)程序編譯時語句③出錯[單選題]127.下面程序段:x=3;do{y=x--;if(!y){coutA)將輸出##B)是死循環C)將輸出###D)含有不合法的控制表達式[單選題]128.分別以下列序列構造二叉排序樹,與用其它三個序列所構造的結果不同的是()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.在公有派生的情況下,派生類中定義的成員函數只能訪問原基類的()。A)公有成員和私有成員B)私有成員和保護成員C)公有成員和保護成員D)私有成員、保護成員和公有成員[單選題]130.在C++中,實現封裝性需借助于()。A)枚舉B)類C)數組D)函數[單選題]131.使用重載函數編程序的目的是()。A)使用相同的函數名調用功能相似的函數B)共享程序代碼C)提高程序的運行速度D)節省存貯空間[單選題]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)友元是本類的成員函數B)友元不是本類的成員函數C)友元不是函數D)友元不能訪問本類私有成員[單選題]134.以下說法中正確的是()。A)C++程序總是從第一個定義的函數開始執行B)C++程序總是從main函數開始執行C)C++函數必須有返回值,否則不能使用函數D)C++程序中有調用關系的所有函數必須放在同一個程序文件中[單選題]135.下列程序中說明的公有成員是()。classLocation{intX;public:voidinit(intX,intY);private:intY;public:intGetX();intGetY();}A)XB)init(intX,intY)C)GetX(),GetY()D)B和C都是[單選題]136.下列關于函數的說法中,正確的是________。A)C++允許在函數體中定義其他函數B)所有的內聯函數都要用inline說明C)僅函數返回類型不同的同名函數不能作為重載函數使用D)形參的默認值應從左至右逐個依次給出[單選題]137.下列不是異常處理中需要用到的標識符是()。A)tryB)catchC)throwD)go[單選題]138.直接插入排序的平均時間復雜度為()。A)O(logn)B)O(n)C)O(nlogn)D)O(n2)[單選題]139.正確的C++語言標識符是()。A)3d_maxB)ifC)A&D)sum_2[單選題]140.設一個鏈表最常用的操作是在末尾插入結點和刪除尾結點,則選用什么最節省時間A)單鏈表B)單循環鏈表C)帶尾指針的單循環鏈表D)帶頭結點的雙循環鏈表[單選題]141.下面哪個標識符不是內存管理函數?()A)mallocB)callocC)freeD)goto[單選題]142.對于長度為n的有序順序表,若采用折半搜索,則對所有元素的搜索長度中最大的為()的值的向下取整加一。A)log2(n+1)B)log2nC)n/2D)(n+1)/2[單選題]143.閱讀下面代碼,輸出結果為()intmain(){charstr1[]="abc";charstr2[]="abc";constcharstr3[]="abc";constcharstr4[]="abc";constchar*str5="abc";constchar*str6="abc";coutA)truefalsetrueB)falsetruetrueC)falsefalsefalseD)falsefalsetrue[單選題]144.以下敘述不正確的是()。A)在不同的函數中可以使用同名的變量B)函數中的形式參數是局部變量C)在函數內定義的變量只在本函數范圍內有效D)在函數內復合語句中定義的變量也可在本函數范圍內有效[單選題]145.下面程序執行結果: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.一個類的靜態數據成員所表示屬性()。A)是類的或對象的屬性B)只是對象的屬性C)只是類的屬性D)類和友元的屬性[單選題]147.以下定義內聯函數f()的語句,正確的是()。A)inlinevoidf();voidf(){}B)voidf();inlinevoidf(){}C)voidf():inline;voidf(){}D)voidf();voidf():inline{}"[單選題]148.指出下列對定義重載函數的要求中,()是錯誤的。A)要求參數的個數相同B)要求參數的類型相同時,參數個數不同C)函數的返回值可以不同D)要求參數的個數相同時,參數類型不同[單選題]149.語句ofstreamf(?TEMP.DAT?,ios::app|ios::binary)?的功能是建立流對象f,試圖打開文件TEMP.DAT并與之連接,并且()A)若文件存在,將文件寫指針定位于文件尾;若文件不存在,建立一個新文件B)若文件存在,將其置為空文件;若文件不存在,打開失敗C)若文件存在,將文件寫指針定位于文件首;若文件不存在,建立一個新文件D)若文件存在,打開失敗;若文件不存在,建立一個新文件[單選題]150.與二進制數101.01011等值的十六進制數為()。A)BB)5.51C)51D)5.58[單選題]151.下列有關C++流的敘述中,錯誤的是()。A)C++操作符setw設置的輸出寬度永久有效B)C++操作符endl可以實現輸出的回車換行C)處理文件I\O時,要包含頭文件fstreamD)進行輸入操作時,eof()函數用于檢測是否到達文件尾[單選題]152.下列循環語句的循環次數是________。while(inti=0)i--;A)0B)1C)2D)3[單選題]153.數據結構中,對于希爾排序的組內排序采用的方式是。A)冒泡排序B)折半插入排序C)快速排序D)以上都不對[單選題]154.下列關于return語句的敘述中,正確的是()。A)任何函數的函數體中至少有一個return語句B)任何函數的函數體中最后一條語句必須是return語句C)如果函數的返回類型為void,則其函數體中可以沒有return語句D)如果函數的返回類型為int,則其函數體中可以沒有return語句[單選題]155.對于表達式boolx=5;inta=x==5;變量a的值為()。A)1B)0C)5D)false[單選題]156.以下選項中,不合法的字符常量是()。A)?\n?B)?\xf?C)?\0?D)?\045?第2部分:多項選擇題,共16題,每題至少兩個正確答案,多選或少選均不得分。[多選題]157.數據結構中,排序算法不穩定的有哪些A)快速排序B)冒泡排序C)直接插入排序D)希爾排序[多選題]158.下列關于直接插入排序法的說法不正確的是A)只能對數字進行排序B)只能對數字和英文單詞進行排序C)可以對漢字進行排序D)只能從小到大進行排列[多選題]159.下列關于C++關鍵字的說法中錯誤的是A)關鍵字是用戶為程序中各種需要命名的?元素?所起的名字B)關鍵字是對程序中的數據進行操作的一類單詞。C)關鍵字是在程序中起分割內容和界定范圍作用的一類單詞D)關鍵字是C++中預先定義并實現一定功能得一類單詞。[多選題]160.把一棵樹轉換為二叉樹后,這棵二叉樹的形態的說法不正確的是A)唯一的B)有多種C)有多種,但根結點都沒有左孩子D)有多種,但根結點都沒有右孩子[多選題]161.對于折半查找方法,下面的說法正確的是A)折半查找方法不適用于按值有序鏈接的鏈表的查找B)折半查找方法適用于按值有序的順序表的查找C)折半查找方法適用于按關鍵字值大小有序排列的順序文件的查找D)折半查找方法適用于排序連續順序文件的查找[多選題]162.C++中下列字符串中可以作為標示符的是A)_256B)classC)delete1D)5char[多選題]163.數據的運算最常用的是A)插入B)刪除C)修改D)查找[多選題]164.關于輸出流對象的說法正確的是A)cout標準輸出B)cerr標準錯誤輸出C)clog類似于cerr,而clog中的信息存放在緩沖區中,緩沖區滿后或遇endl時向顯示器輸出D)以上說法都正確[多選題]165.數據結構中,二叉樹結點和說法正確的是A)二叉樹中每個結點的兩棵子樹的高度差等于1B)二叉樹中每個結點的兩棵子樹是有序的。C)二叉樹中每個結點有兩棵非空子樹或有兩棵空子樹。D)具有12個結點的完全二叉樹有5個度為2的結點。[多選題]166.數據結構中棧和隊的共同點不包括A)都是先進后出B)都是后進先出C)只允許在端點處插入和刪除元素D)沒有共同點[多選題]167.下列程序中的橫線處填寫的語句錯誤的是_____A)data=Sample::data;B)data(data);C)this->data=data;D)Sample::data=data;[多選題]168.關于樹的度的描述正確的是A)樹的度為0的結點稱為葉子B)樹的度不為0的結點稱為分支結點C)樹的度為0的結點稱為分支結點D)樹的度不為0的結點稱為葉子[多選題]169.已知int型變量a,執行語句a=?A?+1.6;則以下說法正確的有()。A)變量a為int型B)變量a為浮點型C)程序會出現編譯錯誤D)a的值是字符?A?的ASCII值加上1[多選題]170.一棵樹可轉換成為與其對應的二叉樹,則下面敘述不正確的是A)樹的先根遍歷序列與其對應的二叉樹的先序遍歷相同B)樹的后根遍歷序列與其對應的二叉樹的后序遍歷相同C)樹的先根遍歷序列與其對應的二叉樹的中序遍歷相同D)只有A正確[多選題]171.樹形結構中根結點、葉子結點等的說法正確的是A)在樹形結構中,樹根結點沒有前驅結點B)樹形結構中除根結點外,每個結點有且只有1個前驅結點C)葉子點沒有后續結點D)除葉子結點外,其余每個結點的后續結點數可以任意多個[多選題]172.以下關于函數指針說法正確的是()。A)1個函數的函數名就是該函數的入口地址B)函數指針變量不能進行算術運算C)可以用如下形式定義1個函數指針變量:int*pf()D)假設有1個函數指針pf和1個函數f(),則可以用如下形式給函數指針賦值:pf=f()第3部分:填空題,共12題,請在空白處填寫正確答案。[填空題]173.作為語句標號使用的C++保留字case和default只能用于________語句的定義體中[填空題]174.若要把整型變量y定義為x的引用,則所使用的定義語句為_______。[填空題]175.每個對象都是所屬類的一個___。[填空題]176.C++中當一個函數無返回值時,則函數的類型是()。[填空題]177.C++程序必須有且只有一個主函數,其函數名為______。[填空題]178.決定C++語言中函數的返回值類型的是()A)return語句中的表達式類型B)調用該函數時系統隨機產生的類型C)調用該函數時的主調用函數類型D)在定義該函數時所指定的數據類[填空題]179.變量分為全局和局部兩種,()。變量沒有賦初值時,其值是不確定的。[填空題]180.假定一個類的構造函數為A(intaa,intbb){a=aa--;b=a*bb;},則執行Ax(4,5);語句后,x.a和x.b的值分別為()A)3和15B)5和4C)4和20D)20和5[填空題]181.vector類中用于刪除向量中的所有對象的方法是___。[填空題]182.下面敘述不正確的是()A)派生類一般都用公有派生B)對基類成員的訪問必須是無二義性的C)賦值兼容規則也適用于多重繼承的組合D)基類的公有成員在派生類中仍然是公有[填空題]183.C++程序的源文件擴展名為___。[填空題]184.C++語言中如果調用函數時,需要改變實參或者返回多個值,應該采取___方式。第4部分:判斷題,共29題,請判斷題目是否正確。[判斷題]185.棧和隊列的存儲方式既可是順序方式,也可是鏈接方式A)正確B)錯誤[判斷題]186.進行折半搜索的表必須是順序存儲的有序表A)正確B)錯誤[判斷題]187.樹中任意結點的子樹不必是有序的A)正確B)錯誤[判斷題]188.()抽象類不能做函數的參數類型,也不能作為函數的返回類型。A)正確B)錯誤[判斷題]189.goto語句可以指向一段代碼中的任意行。[判斷題]190.當待排序的元素很大時,為了交換元素的位置,移動元素要占用較多的時間,這是影響時間復雜度的主要因素。A)正確B)錯誤[判斷題]191.一個包含循環結構的函數不可以定義為內聯函數。A)正確B)錯誤[判斷題]192.函數參數傳遞過程中實參類型需要與形參相同()A)正確B)錯誤[判斷題]193.constchar*p說明了p是指向字符串的常量指針。[判斷題]194.C++語言中,包含字符串常用函數的類文件是string.h[判斷題]195.以下程序的輸出結果為3。()inta[2][2]={1,2,3,4};printf(""%d\n"",a[1][0]);"[判斷題]196.定義數組時沒有初始化,此時數組元素的值是不確定的。A)正確B)錯誤[判斷題]197.已知有如下代碼片段#defineM(x)x*xnta=3;intb=M(a+1);宏展開后是:b=3+1*3+1=7則變量a的值為16。()[判斷題]198.使用數組時,數組元素的下標可以不從0開始。A)正確B)錯誤[判斷題]199.線性表的鏈式存儲結構優于順序存儲。A)正確B)錯誤[判斷題]200.具有10個葉結點的二叉樹中,有9個度為2的結點()A)正確B)錯誤[判斷題]201.快速排序的最好時間復雜度是O(n^2)A)正確B)錯誤[判斷題]202.C語言出現的早期主要用于UNIX系統[判斷題]203.當break語句用在雙重循環的內循環中時,它只能退出內循環到外循環中去,而不能直出整個雙重循環[判斷題]204.構造函數是非成員函數。()A)正確B)錯誤[判斷題]205.動態查找表和靜態查找表的重要區別在于前者包含有插入和刪除運算,而后者不包含這兩種運算。A)正確B)錯誤[判斷題]206.哈希表中,關鍵字能夠唯一的確定一條記錄[判斷題]207.隊列在程序調用時必不可少,因此遞歸離不開隊列()A)正確B)錯誤[判斷題]208.線性表就是順序存儲的表()A)正確B)錯誤[判斷題]209.集合與線性表的區別在于是否按關鍵字排序()A)正確B)錯誤[判斷題]210.類的私有成員只能被類中的成員函數訪問,任何類以外的函數對它們的訪問都是非法的。[判斷題]211.把int型的變量轉換為double型的變量不需要進行顯式的類型轉換說明[判斷題]212.()公有繼承時,派生類繼承了基類的所有成員。A)正確B)錯誤[判斷題]213.靜態類標識符在它的作用域之外是不存在的第5部分:問答題,共47題,請在空白處填寫正確答案。[問答題]214.對象的___只能由這個對象的操作來存取[問答題]215.給出下面程序的輸出結果#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.對于下列函數定義,說法正確的是()。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.如何引用一個已經定義過的全局變量?[問答題]218.請寫出下列程序的運行結果#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.總結const的應用和作用?[問答題]220.試建立一個類SP,求,另有輔助函數power(m,n)用于求。具體要求如下:(1)私有成員數據。intn,k:存放公式中n和k的值;(2)公有成員函數。SP(intn1,intk1):構造函數,初始化成員數據n和power(intm,intn):求fun():求公式的累加和。voidshow():輸出求得的結果。(3)在主程序中定義對象s,對該類進行測試。[問答題]221.對象成員是指該對象所屬類中定義的成員,包括數據成員和[問答題]222.下列程序的輸出結果第一行是________,第二行是______,第三行是________。#includeusingnamespacestd;inta=5;voidfun(inta){::a-=--a;cout[問答題]223.在C++類中可以包含_____、______和三種具有不同訪問控制權的成員。[問答題]224.簡述C++的主要特點以及C++與C語言語法上的不同之處。[問答題]225.運行下列程序結果為________________________。#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<<"次調用拷貝構造函數!"<<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)數組可以存放不同類型的元素。(b)定義inta[2];,則數組a有兩個數組元素。(c)定義inta[3];,則該數組中元素分別為:a[0],a[1],a[2],a[3]。(d)在編譯時,不必確定數組的大小。[問答題]227.以下程序的功能是判斷一個數是否為素數。請填空。#include<iostream.h>voidmain(){intnum;cout<<"輸入一個正整數:";_________①________;intisprime=1;for(inti=2;i<=num-1;i++)if(________②________){isprime=0;______③______;}if(isprime)cout<<num<<"是一個素數。"<<endl;elsecout<<num<<"不是一個素數。"<<endl;}[問答題]228.流運算符為什么不能通過類的成員函數重載?一般怎么解決?[問答題]229.下列程序的輸出結果是________。#includeusingnamespacestd;voidfun(inta,int&b){a=a*a;b=b+b;}intmain(){intx,y;x=2;y=3;fun(x,y);cout[問答題]230.以下程序的運行結果為)。#include<iostream>Usingnamespacestd;Inta{5};Intmain(){{inta{2};cout<<::a;cout<<a;}cout<<a<<endl;return0;}[問答題]231.程序分析題:閱讀程序后,填寫程序的正確運行結果。1/1文字題請寫出myText1.txt文本文件中的內容。[問答題]232.#if!defined(AFX_?_HADE_H)#define(AFX_?_HADE_H)??#endif作用?[問答題]233.如果一個派生只有一個唯一的基類,則這樣的繼承關系稱為。[問答題]234.構造函數的調用順序是什么?[問答題]235.在開發C++程序的過程中,編輯、編譯、連接的作用是什么?[問答題]236.古典問題:有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三個月后每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少?[問答題]237.下列程序的輸出結果是________。#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的成員變量可以由哪些函數訪問?[問答題]239.編寫函數,將給定的字符串的大寫字母轉變成小寫字母;其它字符不變。主函數輸入一個字符串,調用該函數對其進行轉換,分別輸出原串和轉換之后的串。[問答題]240.C++程序函數體中數據聲明和語句后面必須有()[問答題]241.運行下列程序的結果為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.關于棧的數據結構的描述正確的是?A)先進先出B)先進后出[問答題]243.判定2000-2500年中的每一年是否為閏年,將結果輸出。(判定條件: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;}執行后的輸出結果是()。(a)CBA(b)BAC(c)ACB(d)ABC[問答題]245.(填空題)寫出下列程序的運行結果:#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;}運行該程序結果為_________________________。[問答題]247.C++編譯器自動為類產生的四個缺省函數是什么?[問答題]248.windows系統中查看網卡信息使用哪個指令?A)ifconfigB)ipconfig[問答題]249.編程實現:對鍵盤輸入的任意一個四位正整數,計算各位數字平方和。[問答題]250.在C++中,判斷一個邏輯量是否為?真?時,采取的標準是:如果其值是0就認為是?假?,如果其值是()就認為是?真?。[問答題]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.完成程序題:請按試題順序和空格順序填寫答案。求兩個浮點數之差的cha函數的原型聲明、調用方法。1/1文字題#include<iostream>usingnamespacestd;voidmain(){floata,b;_____________;//函數cha的原型聲明a=12.5;b=6.5;floatc=_______________;//調用函數chacout<<c<<endl;}floatcha(floatx,floaty){floatw;w=x-y;returnw;}[問答題]254.++和--運算符只能用于_()___,而不能用于常量或表達式。[問答題]255.常用的算法表示方法有:自然語言、_()____、_()____、計算機語言等。[問答題]256.下列說法正確的是()。(a)基類的構造函數和析構函數不能被派生類繼承。(b)在派生類中用戶必須自定義派生類構造函數。(c)析構函數與構造函數被調用的順序是一致的。(d)在多重繼承中,多個基類的構造函數的調用順序由定義派生類構造函數時指定的初始化表中的次序決定。[問答題]257.編寫一個程序完成字符串比較。當兩個字符串長度相等時,對其中各個字符進行比較,比到第一個不相等的字符為止,字符大的該字符串就大;若兩個字符串長度不等,則長度小的字符串小;當兩個字符串長度相等,對應位字符也相等時,兩個字符串相等。[問答題]258.定義以下變量并假設已賦確定的值:?charw;intx;floaty;doublez;?,則表達式?w*x+z-y?的數據類型是___[問答題]259.寫一個程序根據從鍵盤輸入的里氏強度顯示地震的后果。根據里氏強度地震的后果如下:里氏強度后果小于4很小4.0到5.0窗戶晃動5.0到6.0墻倒塌;不結實的建筑物被破壞6.0到7.0煙囪倒塌;普通建筑物被破壞7.0到8.0地下管線破裂;結實的建筑物也被破壞超過8.0地面波浪狀起伏;大多數建筑物損毀**輸入格式要求:實數,提示信息:cout<<"請輸入地震的里氏強度:"<<endl;**輸出格式要求:"本次地震后果:很小!""本次地震后果:窗戶晃動!""本次地震后果:墻倒塌;不結實的建筑物被破壞!""本次地震后果:煙囪倒塌;普通建筑物被破壞!""本次地震后果:地下管線破裂;結實的建筑物也被破壞!""本次地震后果:地面波浪狀起伏;大多數建筑物損毀!"[問答題]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選項中,表達式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. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司游樂園活動方案
- 公司新年酒會策劃方案
- 公司組織爬山策劃方案
- 公司游艇商務活動方案
- 公司文化集市策劃方案
- 公司綠色騎行活動方案
- 公司新年同樂會活動方案
- 公司母親節福利活動方案
- 公司消防日活動方案
- 公司線上交流活動方案
- 浙江省溫州市樂清市2022-2023學年五年級下學期6月期末科學試題
- 2025年中國城市禮物發展白皮書
- 2024年陜西省西安市初中學業水平模擬考試地理試卷
- 口腔門診放射管理制度
- cpsm考試試題及答案
- 匯川技術高壓變頻器技術標準教材
- 2025年玻璃鋼圍網漁船項目市場調查研究報告
- 完整版新修訂《厲行節約反對浪費條例》(課件)
- 廣東省東莞市2025屆九年級下學期中考二模地理試卷(含答案)
- 2025海南中考:政治必考知識點
- DLT 5035-2016 發電廠供暖通風與空氣調節設計規范
評論
0/150
提交評論