




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C+詡言程序設(shè)計(jì)復(fù)習(xí)題一、 單項(xiàng)選擇題1 .下列表達(dá)式中 不正確的是。A、pxB、p= q= 9C、k/ (p+3)D、23i +52 .若w是一個(gè)bool型變量,則 w &&!w的值是。A、trueB 、falseC、與w的值相同D、與!w的值相同3 .要定義一個(gè)int型數(shù)組A,并使其各元素具有初值9, 0, 3, 0, 0,不正確的定義語(yǔ)句是 A、int A =9, 0, 3;B int A =9, 0, 3, 0, 0;B、int A5=9, 0, 3;D int A5=9, 0, 3, 0;4 .如果一個(gè)函數(shù)無(wú)返回值,則只能作為 被調(diào)用。A、表達(dá)式R語(yǔ)句C、有參函數(shù)口無(wú)
2、參函數(shù)5 .有關(guān)析構(gòu)函數(shù)的說(shuō)法中不正確的是。A、析構(gòu)函數(shù)有且只能有一個(gè)B、析構(gòu)函數(shù)無(wú)任何函數(shù)類(lèi)型C、析構(gòu)函數(shù)和構(gòu)造函數(shù)一樣可以有參數(shù)H析構(gòu)函數(shù)的作用是在對(duì)象被撤銷(xiāo)時(shí)收回先前分配的內(nèi)存空間6 .的功能是對(duì)對(duì)象進(jìn)行初始化A、析構(gòu)函數(shù)R數(shù)據(jù)成員C、構(gòu)造函數(shù)口靜態(tài)成員函數(shù)7 .下列for語(yǔ)句的循環(huán)次數(shù)為。for (int i =0, x=0; !x && i<=5;i+)A、5B、6C、1Dk無(wú)限8 .X>Y&&X<=Y 的值為。A、trueB、falseC 與X>Y的值相同D 、與X<=Y的值相同9 .若對(duì)函數(shù)類(lèi)型未加顯式說(shuō)明,則該函數(shù)的
3、隱含類(lèi)型是 。A、voidB、doubleC、int口 char10 .有關(guān)類(lèi)和對(duì)象的說(shuō)法,下列不正確的是。A、對(duì)象是類(lèi)的一個(gè)實(shí)例B 、任何一個(gè)對(duì)象只能屬于一個(gè)具體的類(lèi)C、一個(gè)類(lèi)只能有一個(gè)對(duì)象口類(lèi)與對(duì)象的關(guān)系和數(shù)據(jù)類(lèi)型和變量的關(guān)系相似1.1. 不是構(gòu)造函數(shù)的特征。A、構(gòu)造函數(shù)的函數(shù)名與類(lèi)名相同R構(gòu)造函數(shù)可以重載C、構(gòu)造函數(shù)可以設(shè)置默認(rèn)參數(shù)口構(gòu)造函數(shù)必須指定類(lèi)型說(shuō)明12 . 是析構(gòu)函數(shù)的特征。A、一個(gè)類(lèi)中只能定義一個(gè)析構(gòu)函數(shù)R析構(gòu)函數(shù)與類(lèi)名不同C、析構(gòu)函數(shù)的定義只能在類(lèi)體內(nèi)口析構(gòu)函數(shù)可以有一個(gè)或多個(gè)參數(shù)13 .類(lèi)型修飾符unsigned修飾 類(lèi)型是錯(cuò)誤的。A、char B、int C 、long
4、 int D 、float14 .下列十六進(jìn)制的整型常數(shù)表示中, 是錯(cuò)誤的A、0xaf B、0X1b C、2fx D 0XAE15 .下列運(yùn)算符中, 的結(jié)合性從左到右。A、三目 日賦值 C比較 H單目16 .預(yù)處理命令在程序中都是以 開(kāi)頭的。A、*B、# C :D /17 .將兩個(gè)字符串連接成一個(gè)字符串時(shí),選用 函數(shù)。A、strlenB、strcpyC strcatD strcmp18 .下述靜態(tài)數(shù)據(jù)成員的特征中, 是錯(cuò)誤的。A說(shuō)明靜態(tài)數(shù)據(jù)成員時(shí),前面要加修飾府static日靜態(tài)數(shù)據(jù)成員要在類(lèi)體外進(jìn)行初始化C引用靜態(tài)數(shù)據(jù)成員時(shí),要在靜態(tài)數(shù)據(jù)成員名加類(lèi)名和作用域運(yùn)算符D靜態(tài)數(shù)據(jù)成員不是所有對(duì)象所
5、公有的19 .類(lèi)C是以多重繼承的方式從類(lèi)A和類(lèi)B繼承而來(lái)的,類(lèi) A和類(lèi)B無(wú)公共的基類(lèi),那么:A.類(lèi)C的繼承方式只能采用public繼承。B.可改用單繼承的方式實(shí)現(xiàn)類(lèi)C的同樣功能。C.類(lèi)A和類(lèi)B至少有一個(gè)是抽象類(lèi)。D.類(lèi)A和類(lèi)B至少有一個(gè)是虛基類(lèi)。20 .下列哪種用法不能體現(xiàn)類(lèi)A和類(lèi)B之間的組合關(guān)系:A.類(lèi)A中聲明數(shù)據(jù)成員 B b;B.類(lèi)A中聲明數(shù)據(jù)成員 B* b;C.類(lèi)A中聲明數(shù)據(jù)成員 const B& b;D.類(lèi)A中聲明成員函數(shù) B func( B& obj);21 .執(zhí)行bool OK=2!=3; cout<<OK ;后,顯示在屏幕上的是 。A、trueB、fa
6、lseC 1D 、022 .若w是一個(gè)bool型變量,則 w | 5 的值是。A、trueB、falseC與w的值相同D 、與!w的值相同23 .已知一正常運(yùn)行的程序中有這樣兩個(gè)語(yǔ)句:int* p2=&x,*p1=d1;*p2=*d2;由此可知,變量d1和d2的數(shù)據(jù)類(lèi)型分別是 。A、int 和 intB> int* 和 intC、int* 和 int*D 、int 和 int*24 .要使指針變量P指向一維數(shù)組 A的第五個(gè)元素(下標(biāo)為4的那個(gè)元素),正確的賦值表達(dá)式OA、P=&A 或 P=&A4C、P=A+4 或 P=A425.是給對(duì)象取一個(gè)別名。A、指針C、枚舉
7、26.sizeof (double )是一個(gè)A、整型B、P=A+4 或 A=&A4口 P=&A+4 或 P=A4R引用口結(jié)構(gòu)表達(dá)式。R雙精度口函數(shù)調(diào)用C、不合法27 .要定義一個(gè)int型數(shù)組A,并使其各元素具有初值9, 0, 3, 0, 0,不正確的定義語(yǔ)句是 A、int A =9, 0, 3;B、int A5=9, 0, 3;28.下列while循環(huán)的次數(shù)是 A、0C 529.有關(guān)構(gòu)造函數(shù)的說(shuō)法不正確的是 A、構(gòu)造函數(shù)的名字和類(lèi)的名字一樣 C、構(gòu)造函數(shù)無(wú)任何數(shù)據(jù)類(lèi)型B int A =9, 0, 3, 0, 0;D int A5=9, 0, 3, 0;。While (int i
8、=0) i ;R 1口無(wú)限R構(gòu)造函數(shù)在聲明對(duì)象時(shí)自動(dòng)執(zhí)行 口構(gòu)造函數(shù)有且只有一個(gè)30 .以下類(lèi)的說(shuō)明中,指出有錯(cuò)誤的地方 class Aint a=1;/Adouble b; /Bpublic:A( );/CA( );/DA、GA、B>GDA、GA、GA、B>GDA.B.31.下列各函數(shù)中,A、構(gòu)造函數(shù)C、友員函數(shù) 32.下列定義中,A、int *p5C、(int *)p5不是類(lèi)的成員函數(shù)。B、析構(gòu)函數(shù)口拷貝初始化構(gòu)造函數(shù)是定義指向數(shù)組的指針33.下列double型常量表示中,E15 B、.35 C 3E5 D34.對(duì)字符數(shù)組初始化時(shí), char si 口 = " abc
9、d " char s3口3=" abc" ;p。B int (*p)5D int *p 是錯(cuò)誤的。3E- 5 是正確的。B char s23=D char s423=35.下述關(guān)于break語(yǔ)句的描述中,break語(yǔ)句可以用在循環(huán)體內(nèi),它將退出該重循環(huán)開(kāi)關(guān)語(yǔ)句中每個(gè)語(yǔ)句序列中必須有break語(yǔ)句«”xyz ;<<""p "Ixyz , mnp ;是不正確的。開(kāi)關(guān)語(yǔ)句中default子句只能放在最后開(kāi)關(guān)語(yǔ)句中case子句后面的表達(dá)式可以是整型表達(dá)式36 .下面關(guān)于條件語(yǔ)句的描述中, if語(yǔ)句中只有一個(gè)else子句
10、if語(yǔ)句中if體不能是開(kāi)關(guān)語(yǔ)句37 .派生類(lèi)的對(duì)象對(duì)它的基類(lèi)中公有繼承的公有成員公有繼承的保護(hù)成員38.關(guān)于虛函數(shù)的描述中,B、D是錯(cuò)誤的。B if語(yǔ)句中可以有多個(gè) else if 子句D if語(yǔ)句的if體可以是循環(huán)語(yǔ)句是可以訪問(wèn)的。公有繼承的私有成員私有繼承的公有成員是正確的。虛函數(shù)是一個(gè) static 類(lèi)型的成員函數(shù)虛函數(shù)是一個(gè)非成員函數(shù)基類(lèi)中說(shuō)明了虛函數(shù)后,派生類(lèi)中將其對(duì)應(yīng)的函數(shù)不必說(shuō)明為虛函數(shù)派生類(lèi)的虛函數(shù)和基類(lèi)的虛函數(shù)具有不同的參數(shù)個(gè)數(shù)和類(lèi)型39.類(lèi)A有一個(gè)實(shí)例化的常量對(duì)象a,那么下面的說(shuō)法中不正確的是:類(lèi)A中的非靜態(tài)數(shù)據(jù)成員一定都是常量成員。通過(guò)a可以直接調(diào)用類(lèi) A的常量成員函數(shù)。
11、C. a不能直接作為左值表達(dá)式使用。D. a可以是靜態(tài)常量對(duì)象。40.在不考慮強(qiáng)制類(lèi)型轉(zhuǎn)換的情況下,關(guān)于類(lèi)中常量成員函數(shù)的下列說(shuō)法不正確的是A.B.C.D.常量成員函數(shù)中不能修改本類(lèi)中的非靜態(tài)數(shù)據(jù)成員。常量成員函數(shù)中可以調(diào)用本類(lèi)中的任何靜態(tài)成員函數(shù)。常量成員函數(shù)的返回值只能是若常量成員函數(shù)中調(diào)用虛函數(shù)void或常量。f,那么函數(shù)f在本類(lèi)中也一定是一個(gè)常量成員函數(shù)。41.n>=0的等價(jià)條件是A、n<0C !(n<0)B !(n>=0)D 、!(n>0)42.與 if(x>0) if(y<0) x+=y;else x-=y;A、if(x>0 | y&
12、lt;0) x+=y; else x-=y;C、if(x>0) x=(y>=0 ? x-y : x+y); D43.要使語(yǔ)句p=new long * ;能夠正確執(zhí)行,等效的語(yǔ)句有B if(x<=0 | y>=0) x+=y;else x-=y;、if(y>=0) if(x<=0) x-=y;else x+=y;A、long *p ;C、long p ;44 .有關(guān)構(gòu)造函數(shù)的說(shuō)法中不正確的是A、構(gòu)造函數(shù)的名字和類(lèi)的名字一樣C、構(gòu)造函數(shù)無(wú)任何函數(shù)類(lèi)型45 .以下語(yǔ)句不正確的是 A、 p*=3C、p+=3p應(yīng)定義為long *poB>D。(設(shè)有int plo
13、ng *p ;構(gòu)造函數(shù)在說(shuō)明類(lèi)變量時(shí)自動(dòng)執(zhí)行 構(gòu)造函數(shù)有且只能有一個(gè),q)B p/=q0 p&&二qR循環(huán)執(zhí)行二次口有語(yǔ)法錯(cuò)誤46.以下程序段int x=-1;dox=x*x;while(!x);A、是死循環(huán)C、循環(huán)執(zhí)行一次47.當(dāng)一個(gè)函數(shù)無(wú)返回值時(shí),函數(shù)的類(lèi)型應(yīng)定義為類(lèi)型。O調(diào)用該函數(shù)時(shí)的主調(diào)函數(shù)類(lèi)型決定 在定義該函數(shù)時(shí)所指定的函數(shù)類(lèi)型決定、任意A、voidC、int48.C + +語(yǔ)言中規(guī)定,函數(shù)的返回值的類(lèi)型是由A、return語(yǔ)句中的表達(dá)式的類(lèi)型決定C、調(diào)用該函數(shù)時(shí)系統(tǒng)臨時(shí)決定49.的功能是對(duì)對(duì)象進(jìn)行初始化。A、構(gòu)造函數(shù)C、虛函數(shù)50 .如果一個(gè)函數(shù)無(wú)返回值,則只能作為
14、A、表達(dá)式C、有參函數(shù)51 .下列說(shuō)明中:const char *ptr; ptrA、指向字符常量的指針C、指向字符串常量的指針數(shù)據(jù)成員析構(gòu)函數(shù)被調(diào)用。R語(yǔ)句口無(wú)參函數(shù)應(yīng)該是52.為了避免嵌套的if -else語(yǔ)句的二義性,A、縮排位置相同的ifC、在其之前未配對(duì)的最近的if指向字符的常量指針 指向字符串的常量指針C語(yǔ)言規(guī)定else總是與 在其之前未配對(duì)的if 同一行上的if組成配對(duì)關(guān)系。A、G53.int a=3,*p=&a;變量a的地址值變量p的地址值54 .下列運(yùn)算符中,+ +B、55 .下列的其中p的值是 日無(wú)意義D 3可以用于浮點(diǎn)數(shù)。C >>是引用調(diào)用A、G形參參
15、是指針,實(shí)參是地址值形參和實(shí)參都是數(shù)組名56 .下列存儲(chǔ)類(lèi)標(biāo)識(shí)符中,B、形參和實(shí)參都是變量 形參是引用,實(shí)參是變量 的可見(jiàn)性和存在性不一致。外部類(lèi)B、自定類(lèi)C內(nèi)部靜態(tài)類(lèi)D、寄存器類(lèi)57 .下面關(guān)于new和delete操作符的說(shuō)法,哪個(gè)是不正確的:A.B.C.D.使用new操作符,可以動(dòng)態(tài)分配全局堆中的內(nèi)存資源。若p的類(lèi)型已由A*強(qiáng)制轉(zhuǎn)換為void * ,那么執(zhí)行語(yǔ)句 delete p ;時(shí),類(lèi)A的析構(gòu)函數(shù)不會(huì)被調(diào)用。實(shí)現(xiàn)全局函數(shù)時(shí),new和delete通常成對(duì)地出現(xiàn)在由一對(duì)匹配的花括號(hào)限定的語(yǔ)句塊中。執(zhí)行語(yǔ)句A * p=new A100; 時(shí),類(lèi)A的構(gòu)造函數(shù)只會(huì)被調(diào)用1次。58.類(lèi)TM和類(lèi)TN
16、是兩個(gè)獨(dú)立的類(lèi),那么類(lèi) TM中哪種形式的數(shù)據(jù)成員一定是不允許的:A. TM* a; B. TN& a; C. TM a; D. TN a;59.類(lèi)B是通過(guò)public繼承方式從類(lèi) A派生而來(lái)的,且類(lèi) A和類(lèi)B都有完整的實(shí)現(xiàn)代碼,那么下列說(shuō)法正 確的是:A.類(lèi)B中具有pubic可訪問(wèn)性的成員函數(shù)個(gè)數(shù)一定不少于類(lèi)A中public成員函數(shù)的個(gè)數(shù)。B. 一個(gè)類(lèi)B的實(shí)例對(duì)象占用的內(nèi)存空間一定不少于一個(gè)類(lèi)A的實(shí)例對(duì)象占用的內(nèi)存空間。C.只要類(lèi)B中的構(gòu)造函數(shù)都是 public的,在main函數(shù)中就可以創(chuàng)建類(lèi) B的實(shí)例對(duì)象。D.類(lèi)A和類(lèi)B中的同名虛函數(shù)的返回值類(lèi)型必須完全一致。60.下列哪種函數(shù)可以是
17、虛的:A.自定義的構(gòu)造函數(shù) B.拷貝構(gòu)造函數(shù)C.靜態(tài)成員函數(shù)D.析構(gòu)函數(shù) 二、多項(xiàng)選擇題1 .下列對(duì)指針變量的操作中,正確的是()A char s7; int *p=s=580;C char a7,*p; p=a;B char s6; int *p1=s;*p1= *p2;D int a6,*p; p=&a;E int a8, *p=a;A float b5=0,3.2,4.3;C char a3=,a?;2 .下列一維數(shù)組的初始化語(yǔ)句中,正確的是()B float b5=0,3,4.5,6,7,1.2;D int a=0;E static int b3=1,5;3 .若有說(shuō)明int
18、i=4,j=2,a54,(*p)4;和賦值語(yǔ)句p=a;則對(duì)數(shù)組元素aij 之值的正確引用是()A *( p+4 *i+j) B *(p +i)j C *( *(p+i)+j) D *pijE pij4 . 以下敘述中正確的是()A. 在不同的函數(shù)中可以使用相同名字的變量B. 函數(shù)中的形式參數(shù)是局部變量C. 在一個(gè)函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效D. 在一個(gè)函數(shù)內(nèi)的復(fù)合語(yǔ)句中定義的變量在本函數(shù)范圍內(nèi)有效E. 用 static 標(biāo)識(shí)的變量是全局變量5 . 設(shè)有如下定義:int (*ptr)( ); 則以下敘述中不正確的是()A. ptr 是指向一維數(shù)組的指針變量B. ptr 是指向 int 型
19、數(shù)據(jù)的指針變量C. ptr 是指向函數(shù)的指針,該函數(shù)返回一個(gè)int 型數(shù)據(jù)D. ptr 是一個(gè)函數(shù)名,該函數(shù)的返回值是指向int 型數(shù)據(jù)的指針E. ptr 是一個(gè)指向二維數(shù)組的指針變量6 .以下標(biāo)識(shí)符中不合法的是()A、 pab B、 a#bC、 intD 、 2_and7 .已知: char a20, b20 ;則以下正確的輸入語(yǔ)句是()A 、 gets(a, b);B 、 scanf(“%s%s” ,a, b);C、 scanf(“%s%s”, &a, &b) ; D、 gets (a), gets(b);8 .已知: double *p6;它的含義是()A. p 是指針數(shù)
20、組B. p 是數(shù)組指針C. p 是含有 6 個(gè)元素的一維數(shù)組,數(shù)組中每個(gè)元素都是指向double 型變量的指針D. p 是double 型數(shù)組9 .已知: int i, x34 ;則能將x11 的值賦給變量i 的語(yǔ)句是()A、 i=*(*(x+1)+1)B、 i=x11C、 i=*(*(x+1) D、 i=*(x1+1)10 .設(shè)有以下說(shuō)明語(yǔ)句: struct stu int a;float b; stutype;則下面敘述中正確的是()A、 struct 是結(jié)構(gòu)類(lèi)型的關(guān)鍵字B、 struct stu 是用戶定義的結(jié)構(gòu)類(lèi)型C、 stutype 是用戶定義的結(jié)構(gòu)類(lèi)型變量名D、 a 和 b 都是結(jié)
21、構(gòu)成員名11若有說(shuō)明:long *p,a; 則能通過(guò)scanf 語(yǔ)句正確給輸入項(xiàng)讀入數(shù)據(jù)的程序段是(A) *p=&a; scanf( “ %ld” ,p);(B) p=(long *)malloc(4);(C) scanf( “ %ld” ,p=&a);(D) scanf( “ %ld” ,&a);(E) scanf( “ %ld” ,p); a=*p;12. 下列一維數(shù)組的初始化語(yǔ)句中,正確的是()(A)float b5=0,3.2,4.3; (B)float b5=0,3,4.5,6,7,1.2;(C) char a3= a ;(D) int a=0;(E) sta
22、tic int b3=1,5;13. 以下敘述中錯(cuò)誤的是()A. 定義函數(shù)時(shí),形參的類(lèi)型說(shuō)明只能放在函數(shù)定義的第一行參數(shù)表中B. return 語(yǔ)句后邊不能用表達(dá)式C. 如果函數(shù)的類(lèi)型與返回值類(lèi)型不一致,以函數(shù)類(lèi)型為準(zhǔn)D. 如果函數(shù)的類(lèi)型與返回值類(lèi)型不一致,以返回值類(lèi)型為準(zhǔn)E. 如果形參與實(shí)參的類(lèi)型不一致,以實(shí)參類(lèi)型為準(zhǔn)14. 若有以下說(shuō)明:int a12=1,2,3,4,5,6,7,8,9,10,11,12;char c= a ,d,g;(D) a d -c )則數(shù)值為4 的表達(dá)式是()(A)ag-c (B)a4 (C)a3(D)a d - c 15. 設(shè)有如下定義:int (*ptr)(
23、); 則以下敘述中不正確的是(A. ptr 是指向一維數(shù)組的指針變量B. ptr 是指向 int 型數(shù)據(jù)的指針變量C. ptr 是指向函數(shù)的指針,該函數(shù)返回一個(gè)int 型數(shù)據(jù)D. ptr 是一個(gè)函數(shù)名,該函數(shù)的返回值是指向int 型數(shù)據(jù)的指針E. ptr 是一個(gè)指向二維數(shù)組的指針變量16. 以下標(biāo)識(shí)符中不合法的是()A、 pab B、 a#b C、 intD 、 2_andE、 abc1 7.已知:char a20, b20;則以下正確的輸入語(yǔ)句是()A 、 gets(a, b);B 、 scanf(“%s%s” ,a, b);C、 scanf(“%s%s”, &a, &b)
24、; D、 gets (a), gets(b);E、 getchar(a,b);1 8 .已知:double *p6;它的含義是()a) p 是指針數(shù)組b) p 是數(shù)組指針c) p 是含有 6 個(gè)元素的一維數(shù)組,數(shù)組中每個(gè)元素都是指向double 型變量的指針d) p 是 double 型數(shù)組e) p 是一個(gè)指向數(shù)組的指針1 9 .已知:int i, x34;則能將x11的值賦給變量i的語(yǔ)句是()A、 i=*(*(x+1)+1)B、 i=x11C、 i=*(*(x+1) D、 i=*(x1+1) E、 i=x1+120 .設(shè)有以下說(shuō)明語(yǔ)句:struct stu int a;float b; st
25、utype;則下面敘述中正確的是(A 、 struct 是結(jié)構(gòu)類(lèi)型的關(guān)鍵字C、 stutype 是用戶定義的結(jié)構(gòu)類(lèi)型變量名E 、 stutype 是結(jié)構(gòu)體類(lèi)型名21. 若變量已正確定義并賦值,下面符合B、D、struct stu 是用戶定義的結(jié)構(gòu)類(lèi)型 a 和 b 都是結(jié)構(gòu)成員名C語(yǔ)百語(yǔ)法的表達(dá)式是()A a:=b+1 B a=b=c=2 C a+=b+3 D *p+ E a=a+7=c+b22. 以下敘述中正確的是()A. 在不同的函數(shù)中可以使用相同名字的變量B. 函數(shù)中的形式參數(shù)是局部變量C. 在一個(gè)函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效D. 在一個(gè)函數(shù)內(nèi)的復(fù)合語(yǔ)句中定義的變量在本函數(shù)范圍內(nèi)有
26、效E. 用 static 標(biāo)識(shí)的變量是全局變量23. 設(shè)有如下定義:int (*ptr)( ); 則以下敘述中不正確的是()A. ptr 是指向一維數(shù)組的指針變量B. ptr 是指向 int 型數(shù)據(jù)的指針變量C. ptr 是指向函數(shù)的指針,該函數(shù)返回一個(gè)int 型數(shù)據(jù)D. ptr 是一個(gè)函數(shù)名,該函數(shù)的返回值是指向int 型數(shù)據(jù)的指針E. ptr 是一個(gè)指向二維數(shù)組的指針變量24. 以下敘述正確的是()A. do-while語(yǔ)句構(gòu)成的循環(huán)不能用其它語(yǔ)句構(gòu)成的循環(huán)來(lái)代替B. do-while語(yǔ)句構(gòu)成的循環(huán)只能用break語(yǔ)句退出C.由do-while語(yǔ)句構(gòu)成的循環(huán),其循環(huán)體至少執(zhí)行一次D.用do
27、-while語(yǔ)句構(gòu)成的循環(huán),在 while后的表達(dá)式為非零時(shí)結(jié)束循環(huán)E.用do-while語(yǔ)句構(gòu)成的循環(huán),在 while后的表達(dá)式為零時(shí)結(jié)束循環(huán)25 .若已定義:int a9,*p=a;并在以后的語(yǔ)句中未改變p的值,能表示 a1地址的表達(dá)式是()A p+1 B a+1 C a+ D +p E &a126 .以下標(biāo)識(shí)符中合法的是()A day B E2C intD ab_cd27 .已知:int a, *p=&a;則下列函數(shù)調(diào)用中正確的是()A scanf( %d", &a); B scanf( %d, p");C printf( %d",
28、a);D printf( %d", *p);28 .設(shè)有說(shuō)明int (*ptr)M;其中的標(biāo)識(shí)符ptr是()A. M個(gè)指向整型變量的指針B.數(shù)組指針C.具有M個(gè)指針元素的一維指針數(shù)組,每個(gè)元素都只能指向整型變量D. 一個(gè)指向具有M個(gè)整型元素的一維數(shù)組的指針29 .已知:static int a23=2,4,6,8,10,12;正確表示數(shù)組元素的是()A * (a+1) B *(a1+2) C *(*(a+1)+1) D a0030 .若有以下說(shuō)明和語(yǔ)句:struct student int age;int num; std, *p;p=&std;則以下對(duì)結(jié)構(gòu)變量 std中成員
29、age的引用方式正確的是()A std.age B p->age C (*p).age D *p.age三、填空題:1 .字符串“ Hell?!钡拈L(zhǎng)度是 個(gè)字節(jié),存儲(chǔ)時(shí)占有 個(gè)字節(jié)的空間。2 .字符串" C:DOSDATA.DA T”所表示的全路徑文件名是 。3 .如果x的值為 34, y的值為一7,則執(zhí)行 if(x>0) cout<<?A?;if(y<-8) cout<<?B?;屏幕上顯示的4 .與 if(READY)if(OK) y=-1; else y=0; else y=1;等效的賦值語(yǔ)句是 。5 .執(zhí)行 int i,s;for(i=
30、8,s=0;i>0;i-) s+=i;while(+i<5)s+=i;后,s的值是 o6 .字符串 “ ccutnsoft”的長(zhǎng)度是 。7 .執(zhí)行 for (int i = 23; i>0 ; i-) cout<<?*?;將輸出 個(gè)*號(hào)。8 .指針變量保存的不是一般的數(shù)據(jù)值,而是程序中另一個(gè)對(duì)象的 。9 .一個(gè)類(lèi)有 個(gè)析構(gòu)函數(shù)。10 .執(zhí)行int x=5,y ; y=+x3;后,x 的值是, y 的值是。11 .利用操作符+ + ,語(yǔ)句序列g(shù)=g+1;h=g+3;的功能可以由一個(gè)語(yǔ)句完成,這個(gè)語(yǔ)句是。fb2X 12 2 .與1aJb 2對(duì)應(yīng)的C + +表達(dá)式是 。
31、1 3 .執(zhí)彳? if(s&&!s5 cout<<"AAA"else cout<<"ZZZ"屏幕上顯示的是 。14.執(zhí)行 if(x>923 |x<=923) cout<<"AAA" else cout<<"ZZZ"屏幕上顯示的是 。15. 執(zhí)行 cout<<"?s the date today?', 顯示在屏幕上的是 。1 6 . 25% 3的值是。1 7 .函數(shù)的遞歸調(diào)用是指 。1 8 .作為 調(diào)用的函數(shù),必
32、須有副作用才有意義。1 9 .下面的語(yǔ)句按行顯示輸出5行8列數(shù)組m的所有元素,從倒數(shù)第一行開(kāi)始輸出,最后輸出首行,請(qǐng)補(bǔ)充完整:for(int i= ;i>= ; )cout<<endl;for( ; ; j+)cout<<<<?,;2 0 .下面語(yǔ)句顯示輸出7行7列數(shù)組a的主對(duì)角線上的所有元素,請(qǐng)補(bǔ)充完整:for (; ; i+) cout<<<<?,;21 .表達(dá)式x=625, i= (x>100? 10: 100)的值和完成表達(dá)式求值后變量i的值分別是和。22 .不用操彳符“ !" ,x+y<3的相反條
33、件可以表示為: 。23 .執(zhí)行 for (int i=0; i<=21 ; i+) cout<<?;將輸出 個(gè)*號(hào)。24 .與 int i = 100; while (i) cout<< ?°?; i-;這兩個(gè)語(yǔ)句相當(dāng)?shù)膄or 語(yǔ)句是。25 .利用操作符,語(yǔ)句序列h=g 5;g+=1;的功能可以由一個(gè)語(yǔ)句完成,這個(gè)語(yǔ)句是 。26 .不用操作符“! ", x>=3 | | x<=5的相反條件可以表示為: 。27 .類(lèi)成員的訪問(wèn)屬性分為 、。28 .類(lèi)中的數(shù)據(jù)成員和成員函數(shù)的默認(rèn)類(lèi)型為 ,而結(jié)構(gòu)中的數(shù)據(jù)成員和成員函數(shù)的默認(rèn)類(lèi)型 為。29
34、 .已知數(shù)組array定義為int array尸1,3,6,9,12 ;,則array的各元素值是 ,最小下標(biāo)是 , 最大下標(biāo)是 。30 .已知數(shù)組 array 定義為 int array 5=1,2,3,5,6,8;,則 array 是一個(gè) 行 列的二維數(shù)組,總共 個(gè)元素,最大行下標(biāo)是 ,最大列下標(biāo)是 ,第 一行元素的值是 。四、簡(jiǎn)答題1.說(shuō)明類(lèi)中的 public、protected 和private 成員函數(shù)分別在 public、protected 和private 繼承 方式下在派生類(lèi)中的可訪問(wèn)性。2 .若類(lèi)A和類(lèi)B沒(méi)有繼承關(guān)系,對(duì)于函數(shù)void func(A&),請(qǐng)至少用兩種不
35、同方法說(shuō)明如何才能傳遞一個(gè)非常量的B類(lèi)對(duì)象給func函數(shù)。3 .在聲明類(lèi)中的構(gòu)造函數(shù)、析構(gòu)函數(shù)、純虛函數(shù)、靜態(tài)成員函數(shù)、非靜態(tài)的成員函數(shù)以及全局函數(shù)作為 類(lèi)的友元函數(shù)時(shí),哪些可以是常量成員函數(shù)?4 .舉例說(shuō)明重載(overload)、重定義(redefine) 和重寫(xiě)(override)的含義。5 .通常類(lèi)A的拷貝構(gòu)造函數(shù)的原型寫(xiě)為A(const A&);,請(qǐng)問(wèn)為什么參數(shù)一定要使用引用形式?使用 const修飾符除了可以防止修改傳遞給構(gòu)造函數(shù)的實(shí)參外,還有什么作用?6 .程序員規(guī)范中要求不要寫(xiě)出類(lèi)似(+i)+(i+) 或f(+i,i+)這樣的代碼,請(qǐng)說(shuō)明原因。7 .下面程序的打印結(jié)果是
36、#incudeint f(int);int main() int i;for(i=0;i<5;i+)cout<<F(i)<<""return 0;int f(int i)static int k=1;for(;i>0;i-)k+=i;return k;8 . 下面程序的打印結(jié)果是#include<iostream.h>int add(int x,int y=8);void main()int a=5;cout<<"sum1="<<add(a)<<endl;cout<
37、<"sum2="<<add(a,add(a)<<endl;cout<<"sum3="<<add(a,add(a,add(a)<<endl;int add(int x,int y)return x+y;9、 main() int *p1,*p2,i1=10,i2=20;p1=&i1;p2=&i2;printf("%d,%d , ",*p1,*p2);p2=p1;printf("%d,%dn",*p1,*p2);10、 main() in
38、t a,b,c;a=-1;b=-2;c=+a-b+;printf("%d",c);11、 、 void add() static int x=0;x+;printf("%d ",x);void main() int i;for(i=0;i<3;i+) add();12、 main() char ch25=“ 6934” , ” 8254” ,*p2;int i,j,s=0;for(i=0;i<2;i+)pi=chi;for(i=0;i<2;i+)for(j=0; pij>?0?&&pij<?9?;j+=2)
39、s=10*s+pij- ,0?;printf( “ %d” ,s);13.main() int x,y,z;x=1;y=3;z=+x+(+y);printf("%d",z);14.main() int a10=1,2,3,-4,5,6,7,-8,9,10,s=0; for(int i=0;i<10;i+) if (ai<0)break;s+=ai;printf("%d",s);15.main() int a=24,b=16,r;while (b) r=a%b;a=b;b=r;printf("%d",a);16.main()
40、 char s10="abcdef"char *p=s;printf("%c ",*p+);p+;p+;printf("%c ",*p-);printf("%c ",*-p);17、 main() int x,y,z;x=y=z=3;y=x+-1;printf("%d,%d,",x,y);y=z-+1;printf("%d,%dn", y,z);18、 main() int a10=1,2,3,-4,5,6,7,-8,9,10,s=0; for(int i=0;i<10
41、;i+) if (ai<0)break;s+=ai;printf("%d",s);19、 int x=1;void fun(int x) x=3; main() fun(x);printf( “%dn”,x);20、main() int *p1,*p2,i1=10,i2=20;p1=&i1;p2=&i2;printf("%d,%d , ",*p1,*p2);p2=p1;printf("%d,%dn",*p1,*p2);21、main() int a4=10,25,36,48;int *p=a;printf(&qu
42、ot;%d ",*p);p+;printf("%d ",*p+);printf("%d ",*+p);22、int f(int b ,int n) int i, s=0;for(i=0; i<=n; i+=2) s+=bi;return s;main() int x,a =2, 3, 4, 5, 6, 7, 8, 9;x=f (a, 5);printf( %d”,x );23、main() static chat a = 'program”, *ptr;for( ptr=a; ptr<a+7; ptr+=2) putchar
43、(*ptr);24、int fun(int n) if (n>0)return (n* fun (n-2);else return (1);main() int x;x=fun(5);printf( %dn”, x );五、編程題: 1、設(shè)計(jì)一個(gè)程序,輸入正五邊形的邊長(zhǎng)a,按公式R=-aJ10+25計(jì)算該五邊形外接圓的半徑。2、重新安排整數(shù)序列21, 26, 15, 78, 3, 47, 11, 7,253, 39后順序,使其中最大的 5個(gè)整數(shù) 位于序列的前部。顯示處理后的這個(gè)整數(shù)序列3 .設(shè)計(jì)一個(gè)程序,輸入四個(gè)整數(shù),找出其中最大的一個(gè)并顯示出來(lái)。4 .設(shè)計(jì)一個(gè)程序,輸入三角形的三個(gè)邊的
44、長(zhǎng)度a, b, c,按公式- 一. 1 一 area= Js(s a)(s b)(s c),其中s書(shū)一(a+b + c) 計(jì)算三角形的面積。5 .設(shè)計(jì)一個(gè)程序,計(jì)算并顯示輸出Z %!的值。6 .輸入12個(gè)正整數(shù),然后重新排列這住列的順序,使得所有的奇數(shù)位于數(shù)列的前部。顯示處理后的 這兩個(gè)數(shù)列的結(jié)果C+ 語(yǔ)言程序設(shè)計(jì)復(fù)習(xí)題參考答案一、 單項(xiàng)選擇題:1-5、 DBABC6-10、 CBBCC11-15、 DADCC16-20、 BCD BD21 25 C A B B B26 30 A A A D A 31 35 C B A A B 36 40 C A B A C41-45、 ACBDD46-50、
45、 CADAB51-55、 DCAAD56-60、 CDCBD二、多項(xiàng)選擇題:1、 CE2、 ACDE3、 CE 4、 ABC5、 ABDE6、 BCD7、BD8、AC9、ABD10、ABCD11BCD 12.ACDE 13.ABDE14CE 15.ABDE16. BCD 17. BD18. AC 19.ABD20. ABCD21 、BCD22、 ABC 23、 ABDE 24、CE 25、ABDE 26、 ABD 27、ABCD28、 BD29、 BCD30、 ABC三 、填空題:1.5、 6 2.C:DOSDA TA.DAT3.A4.y=READ?(OK?-1:0):-1;5.466.97.
46、238.地址值9.110.6 、 311.h=+g+3;12.a*sqrt(b+2*sqrt(c)/5)/2 13.ZZZ 14.AAA 15.What?s the date today?16.117.函數(shù)直接或間接調(diào)用自身18.語(yǔ)句 19.4、0、i、intj = 0、j<8、mij 20.int i=0i<7 、 aii21.x+y>=322.22 23.for(int i=100;i>0;i-)24.cout<< ?P? 25.h=g-5;26.x<5&&x>5 27.public 、 protected 、 private
47、28.private 、 public 29.1 3 6 9 12 、 0、 4 30.3、 5、 15、 2、 4、 1 2 3 0 0 四、簡(jiǎn)答題1. 重點(diǎn)是基類(lèi)中的任何Private 在派生類(lèi)中都是不可訪問(wèn)的。2. 可在 A 類(lèi)中定義一個(gè)構(gòu)造函數(shù):A(const B&);或在 B 類(lèi)中定義一個(gè)自動(dòng)轉(zhuǎn)換函數(shù):operator A( ) const;3. 只有純虛函數(shù)、非靜態(tài)的成員函數(shù)可以是常量成員函數(shù)。(這題有點(diǎn)問(wèn)題,析構(gòu)函數(shù)可以是純虛函數(shù),但不能是常量函數(shù))4. 如類(lèi) A 中有函數(shù)int f(void); 和 int f(int); 為重載 (overload) ( 同名,參數(shù)不
48、同)如類(lèi) A 中有函數(shù)int f(void); , A 的派生類(lèi)B 中給 int f(void) 一個(gè)新的實(shí)現(xiàn)體,為redefine如類(lèi) A 中有虛函數(shù)virtual int f(void);,A 的派生類(lèi)B 中給 virtual int f(void) 一個(gè)新的實(shí)現(xiàn)體為 override.5. A(const A& one ). 當(dāng)調(diào)用此拷貝構(gòu)造函數(shù)時(shí),需將參數(shù)壓棧,若不使用&,就需要在棧內(nèi)創(chuàng)建一個(gè)one 的副本,而這需要用拷貝構(gòu)造函數(shù)。這樣就會(huì)形成遞歸調(diào)用。使用const,還允許用一個(gè)常量對(duì)象作為樣本,來(lái)構(gòu)造一個(gè)新的對(duì)象。6. 計(jì)算子表達(dá)式的順序由編譯器決定的,雖然參數(shù)的壓
49、棧順序在給定的調(diào)用方式下式固定的,但參數(shù)表達(dá)式的計(jì)算順序也由編譯器決定的。不同的編譯器或不同的表達(dá)式計(jì)算的順序可能不一致。7. 1 2 5 11 218.5,10,159、10,20,10,1010、211、 1 2 312. 638513、614、615、 816、a d b17、4,2,4,218. 619、120、10,20,10, 1021、10 25 4822、1223、 porm24、15五、編程題1 .設(shè)計(jì)一程序,輸入正五邊形的邊長(zhǎng)a,計(jì)算該五邊形外接圓的半徑#include <iostream.h>#include <math.h>void main()double a,R;cout<<" 輸入正五邊形的邊
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度時(shí)尚消費(fèi)品代理進(jìn)口及市場(chǎng)布局合同
- 二零二五年度退休科研人員合作研發(fā)聘用合同
- 二零二五學(xué)年度學(xué)生校車(chē)安全乘車(chē)環(huán)境改善與優(yōu)化協(xié)議
- 股權(quán)代持協(xié)議書(shū)標(biāo)準(zhǔn)模板:2025年度股權(quán)置換與重組范本
- 二零二五年度校園安全責(zé)任與學(xué)生家長(zhǎng)參與合同
- 二零二五年度購(gòu)物中心日常保潔與應(yīng)急處理合同
- 三字經(jīng)中道理的故事解讀
- 旅游目的地營(yíng)銷(xiāo)與品牌形象塑造研究
- 綠化零工勞務(wù)合同
- 產(chǎn)品供應(yīng)和分銷(xiāo)合同
- 三角形的內(nèi)角和-課件
- 國(guó)企工程施工分包管理2019(67P+PPT)
- 成人大專(zhuān)畢業(yè)論文怎么寫(xiě)(通用6篇)
- 醫(yī)院高壓氧艙室施工方案
- 質(zhì)量問(wèn)題檢出獎(jiǎng)勵(lì)申請(qǐng)表模板
- 中職學(xué)生日常行為規(guī)范主題班會(huì)講稿
- 《大數(shù)據(jù)分析與應(yīng)用》教學(xué)大綱
- 2022年中國(guó)遠(yuǎn)洋海運(yùn)集團(tuán)有限公司招聘考試題庫(kù)及答案解析
- 供應(yīng)鏈管理課件第5章供應(yīng)鏈合作伙伴選擇與評(píng)價(jià)
- 4D現(xiàn)場(chǎng)管理培訓(xùn)ppt課件(PPT 45頁(yè))
- 餐飲店面投資預(yù)算(900平方米)
評(píng)論
0/150
提交評(píng)論