版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1.2.3.4.5.6.7.8.9.10.11.12.13.C+程序設(shè)計課程復(fù)習資料單項選擇題:下列字符串中可以用作 C+標識符的是ld定義變量 int a=6 ,則 a+ 的值是 .6C已知字母A的ASCII碼為65,則表示字符常量 A錯誤的是A. 101 B. x41 C. 65D.“A”結(jié)構(gòu)化程序由三種基本結(jié)構(gòu)組成,不包括C. 控制結(jié)構(gòu) D. 循環(huán)結(jié)構(gòu) D. -f;”,則釋放指針所指內(nèi)存空間的操作是A. 順序結(jié)構(gòu) B. 選擇結(jié)構(gòu) 己知有定義: const int D 5;int i=1;double f=;char c=15;則下列選項錯誤的是A. +i;B. D-;C. c+;若有定義
2、為“ int *r =new int 10;A. delete r; B. delete *r C. delete r; D. delete r ;F列哪個是 C+語言的不正確的標識符B. Ab1 C. bgc D. int下列哪個是C+語言的合法的字符常量A. ” 0”B. 054 C. x89 D. 092定義整型變量 x,y,z 并賦初始值 6 的正確語句是 C. x=y=z=6; D. int x,y,z=6; 是一個源程序經(jīng)過解釋才能執(zhí)行A. int x=y=z=6; B. int x=6,y=6,z=6; 用C+語言編寫的代碼程序A. 可立即執(zhí)行B.C. 經(jīng)過編譯即可執(zhí)行D.將兩個
3、字符串連接起來組成一個字符串時,選用的函數(shù)是A. strlen () B. strcpy () C. strcat () D. strcmp () 在程序中,預(yù)處理命令開頭的字符都是 A. * B. # C. & D. 在C+語言中,表示一條語句結(jié)束的符號是A. “#” ?”下面的循環(huán)語句中循環(huán)體執(zhí)行的次數(shù)為15.16.17.18.19.20.21.a23.24.25.26.27. for(int i=0; in/2) break;2 2+1 C.n/2-1在下面的一維數(shù)組定義中,有語法錯誤的語句是 A. int a =1,2,3; B. int a10=0;C. int a ; D. int
4、 a5;下面的保留字中,不能作為函數(shù)的返回類型 A. void B. int C. new D. long下面的函數(shù)聲明中, “void BC(int a, int b); ”的重載函數(shù)是 A. int BC(int x, int y); B. void BC(int a, char b);C. float BC(int a, int b, int c=0); D. int BC(int a, int b=0);假定AB為一個類,則該類的復(fù)制構(gòu)造函數(shù)的聲明語句為A. AB&(AB x); B. AB(AB x); C. AB(AB* x); D. AB(AB&);表達式( 1,2,3,4 )的
5、結(jié)果是 A. 1 B. 2 C. 3 D. 4 在函數(shù)中如果不說明變量的存儲類型,則默認的存儲類型是 A. auto B. static C. extern D. register下面字符序列中,合法的 C+ 常量是 B. 5LD.AB聲明的自動型變量 a 在沒有賦值的情況下,其值為 B. -1C.1 D.隨機數(shù)設(shè)“ int f(int); ”和“ int g(int); ”是函數(shù) f 和 g 的原形,以下將 f 作為語句調(diào)用的是 A. g(f(3) B. f(g(3) C. g(f(3)+2) D. p=f(g(3)1)下面對構(gòu)造函數(shù)和析構(gòu)函數(shù)正確定義的項是 A. X:X( 參數(shù) ), X:
6、X() B. void X:X(), void X:X()C. X:X( 參數(shù) ), X:X(參數(shù) ) D. void X:X( 參數(shù) ), void X:X( 參數(shù) )變量生存期是指 A. 變量定義 B. 變量在內(nèi)存中分配存儲單元到被釋放期間C.程序的運行D.可執(zhí)行代碼的生存期以下選項中C+表達式不能正確表示的數(shù)學(xué)關(guān)系avxw b為A. ax & x=bB. x=b & a=x) & !(xb) D. axp=5C.A.*p=5D.*=5以下選項中,決定函數(shù)的返回值的類型是 A. 調(diào)用該函數(shù)的主調(diào)函數(shù)類型語句中的表達式類型C.定義函數(shù)時所指定的返回值類型D.調(diào)用函數(shù)時臨時決定下面 for 語
7、句的循環(huán)次數(shù)為 for(int i=0,x=0; !x & i=5; i+);A. 無窮次 .5C在下面的字符數(shù)組定義中,有語法錯誤的語句是 a20=abcdefg a =x+y=55a15= 1, 2a10= 5若用數(shù)組名作為函數(shù)調(diào)用的實參,傳遞給形參的是 A. 數(shù)組的首地址B.數(shù)組中第一個元素的值C. 數(shù)組全部元素的值D.數(shù)組元素的個數(shù)假定AB為一個類,則執(zhí)行“ AB a(4),b5,*p2;”語句時,自動調(diào)用該類構(gòu)造函數(shù)的次數(shù)為A. 6 B. 7 C. 9 D. 11當使用 fstream 流類定義一個流對象,并打開一個磁盤文件時,文件的隱含打開方式為28.29.30.31.32.33.
8、34.35.36.二、1.2.A. ios:in B. ios:out C. ios:in | ios:outD.沒有填空題:若 a 是一個字符數(shù)組, 則使用輸入輸出流對象cout 向屏幕輸出數(shù)組 a 中所存字符串的語句為當一個對象定義時, C+編譯系統(tǒng)自動調(diào)用函數(shù)建立該對象并進行初始化。+語言的參數(shù)傳遞機制包括值傳遞和傳遞兩種。,然后使 p 的值增 1。4.假定 p 是一個指針,則 (*p)+ 運算首先訪問5. 假定對二維數(shù)組a34進行初始化的數(shù)據(jù)為2,5, 6, 2,8,7,則a11被初始化為6. 設(shè)px指向一個類的動態(tài)分配的對象,則執(zhí)行delete px;語句時,將自動調(diào)用該類的 7.
9、變量的基本類型有 、實型、字符型和枚舉型。8. 語法的三種基本結(jié)構(gòu)為順序結(jié)構(gòu)、選擇結(jié)構(gòu)和 結(jié)構(gòu)。9. 一個指針指向一個Data類對象,它保存著該對象的 ,相應(yīng)的指針類型為Data類。10. 若do循環(huán)的“尾”為“ while(+i5的相反表達式為 。122. 假設(shè)在程序中a、b、c均被定義成整型,所賦值都大于1,則能正確表示數(shù)學(xué)式abc的表達式是 (不使用強制類型轉(zhuǎn)換)。23. 假定a是一個一維數(shù)組,則ai的指針訪問方式為。24. 對一個類中的數(shù)據(jù)成員的初始化可以通過構(gòu)造函數(shù)中的初始化表實現(xiàn),也可以通過構(gòu)造函數(shù)中的 實現(xiàn)。+中的標識符只能由字母、數(shù)字和 組成。+語句cout120;可以用8進制
10、數(shù)表示(輸出)120。27.利用“對象名.成員變量”形式訪問的對象成員僅限于被聲明為 的成員。+在調(diào)用一個函數(shù)的過程中,可以直接或間接地調(diào)用該函數(shù)本身,這種調(diào)用稱為 調(diào)用。29. 在C+程序中包含一個頭文件或程序文件的預(yù)編譯命令為 。0。30. 假定一維數(shù)組的定義為“ int a8; ”,則該數(shù)組所含元素的個數(shù)為 31. 十六進制常量前面應(yīng)該加 為前綴。32. 變量一般需要先賦初值再參與運算,變量沒有賦初值時,將由系統(tǒng)自動置為33. 當程序中執(zhí)行到語句時,將結(jié)束所在循環(huán)語句中循環(huán)體的一次執(zhí)行。+中規(guī)定,數(shù)組元素的下標從開始。35. 假定有定義 int *p ,則指向 p 變量的指針變量 pp
11、定義語句為36. 類 test 的析構(gòu)函數(shù)名是 三、判斷題:1. 在C+中,自減運算符“-”可以用于變量,也可以用于常量。語句中必須有 break 語句,否則無法退出 switch 語句。3. 若 S 表示一條 C+ 語句, while(1)S 必定是無限循環(huán)。4. 若有說明: int *p1,*p2,m=3,n; 則 p1=&m;p2=p1; 是正確的賦值語句。5. 在C+語言中,類中的成員函數(shù)能存取類中的私有數(shù)據(jù)。6. 控制格式輸入輸出的操作子 oct 不是設(shè)置域?qū)挼摹?27。7. 在C+中,0127是一個合法的整數(shù),最高位的0實際上是不必要,其值就是8. 如果 x 是一個整型變量,則語句
12、“ int *p=new intx; ”是正確的。9. 數(shù)組是若干相同類型的數(shù)據(jù)的集合。10.在C+語言中,可以使用 new運算符創(chuàng)建的對象或?qū)ο髷?shù)組,可以使用運算符delete刪除之。 11.若類A是類B的友元類,且類 B是類C的友元類,則類 A也是類C的友元類。12. 對于 ofstream 類對象 file , feof 成員函數(shù)的返回值為真表示打開文件失敗。13. 在 switch 語句中, switch 后面的表達式可以為任意類型。14.n、x6A 、101均是 C+的字符常量。15. 一個變量的地址就稱為該變量的“指針” 。16. 如果 (x=y) ,則 (*x=*y) 。17.
13、函數(shù)體內(nèi)聲明的靜態(tài)變量,至多只會被初始化一次。18. 構(gòu)造函數(shù)和析構(gòu)函數(shù)都不能重載。語句的循環(huán)體至少執(zhí)行一遍。 19.在C+語言中,while語句的循環(huán)體有可能一遍都不執(zhí)行,而do while20. 在C+的命名標識符中,大小寫字母是不加區(qū)分的。21. 引用就是某個變量的別名,對引用的操作,實質(zhì)上就是對被引用的變量的操作。 22. 在C+中,二維數(shù)組中元素排列的順序是按行存放的,即在內(nèi)存中先順序存放第一行的元素,再存放第二行的元素。 char *p 說明了 p 是指向字符串的常量指針。 24. 說明或定義對象時,類名前面不需要加 class 關(guān)鍵字。 25. 在C+中,空語句表示什么都不做,因
14、此毫無意義。26. 預(yù)處理命令是在進行編譯前執(zhí)行的,然后再進行正常編譯。27. 語句“ char c=c; char p=&c; ”是錯誤的。 28. 在一個被調(diào)用函數(shù)中,一個 return 語句可返回多個值給調(diào)用函數(shù)。 29. 靜態(tài)成員變量是整個類的所有對象共用的。 函數(shù)只能按規(guī)定向文件寫入所指定的字符數(shù)。 +中,任何一個表達式加上一個分號就構(gòu)成一個語句。 32. 在說明語句“ int a(15), &b=a, *p=&a;”中,b的值與*p的值是相等的。33. 在C+中,函數(shù)聲明時要用函數(shù)原型,即定義函數(shù)時的函數(shù)頭部分。循環(huán)中,循環(huán)變量的作用域是該循環(huán)的循環(huán)體內(nèi)。 35. 在傳值調(diào)用中,要
15、求實參與形參的類型完全一致并且個數(shù)相等。 36. 使用 class 定義的類成員默認的訪問權(quán)限是私有的( private )。 37. 在C+中,條件運算符的結(jié)合方向為從左到右。四、寫出程序的運行結(jié)果:1.#include void main()int a=10, b=15;a*=3;int b=a+20; coutb ;coutbendl;運行結(jié)果 :2.#includeint SD(int a, int b, char op)switch(op)case +: return a+b;case -: return a-b;void main()int x=20, y=8;coutSD(x,y
16、,+) SD(x,y,-)endl;運行結(jié)果 :3.#include void main( )static int b3=1,2,3,4,5,6;b02=12, b12=18;cout*bt*(b+1)t*(b+1)t*(*(b+1)+2)n; coutb02+b12+b22endl;運行結(jié)果 :4.#includevoid main()char ch;cinch;switch(ch)case A:case a: cout1 ; break;case B:case b: cout2 ; break;case C:case c: cout3 ; break;default: coutbad!;b
17、reak;以上程序運行時,分別輸入Acb,則運行結(jié)果 :5.#includevoid main()int s1=0, s2=1;for(int i=2; i5; i+)s1+=i;s2*=i;couts1,s2endl;運行結(jié)果 :6.#includevoid ff(int x) coutff(int): xendl; void ff(double x) coutff(double): xendl;void main()float a;ff(a);char b(a);ff(b);運行結(jié)果 :7.#includevoid main()int s=0;for(int i=1;i7;i+=2)s+=
18、i*i;couts=sendl;運行結(jié)果 :8.#includevoid main()int a9=3,5,7,9,11,13,15,17,25;int *p=a;for(int i=0;i9;i+) if(i+1)%3=0) cout*(p+i) ;coutendl;運行結(jié)果 :9.#include class Apublic:A()cout1;A()cout2;class B:public Apublic:B()cout3;B()cout4;void main()B b;運行結(jié)果 :10.#include#includeint SC(int a, int b, int c)if(ab) a
19、=b;if(ac) a=c; return a;void main()int x,y,z; x=5,y=15,z=25; coutSC(x,y,z)endl;運行結(jié)果 :#include const int n=5;void main()int ann=3,2,4,1,5,8,7,2,5,6,11.6,9,1,4,3,5,5,3,6,2,2,8,1,8,6;int s=0;for(int i=0;in;i+)s+=aii+ain-i-1;if(n%2=1)s-=an/2n/2;couts;運行結(jié)果 :12.#include class sint i,j;public:void setij(in
20、t a,int b)i=a,j=b;int GetMul() return i*j; ;void main( )s *p;p=new s3;for(int j=0;j3;j+)pj.setij(j,j);etMul() delete p;運行結(jié)果 :13.#includeint c;void f1(int x,int *sum)static int y; x+; y+; c=c+y; *sum=(x+y)/c;void main()int b=100;f1(1,&b);coutb cendl; f1(2,&b);coutb cendl; 運行結(jié)果 :14.#include void main(
21、)int i, *d=new int5;for(i=0;i5;i+)di=2*i+1; coutdi ; deleted;運行結(jié)果 :15.#include class ABint a;public:AB(int aa=0)a=aa;AB( )coutaendl;class B:public ABint b;public:B(int aa=0, int bb=0):AB(aa)b=bb; B( )coutb;void main( )B x(5),y(6,7);運行結(jié)果 :16.#includeint LB(int *a, int n)int s=1;for(int i=0;in;i+)s*=*
22、a;a+; return s;void main()int a5=1,2,3,4,5; coutLB(a,5)endl;運行結(jié)果 :17.#include int f(int a)int b=0;static int c=3; b+, c+;return(a+b+c);void main( )int a=2,I; for(I=0;I3;I+) coutf(a)endl;運行結(jié)果 :18.#include class Aint *a;public:A(int x) a=new int(x); cout*a;A() delete a;cout0; ;void main()A x(3),*p;p=n
23、ew A(5);cout1!+(1!+2!)+(1!+2!+ +20 !)=sendl;delete p;運行結(jié)果:五、完成程序:1. 完成以下程序,計算s=1+12+123+1234+12345。void mai n() int t=0, s=0, i;for( i=1; )t = i +;s = s + t;coutse ndl;回答:2. 完成以下程序,求數(shù)組中的最大元素值和最小元素值。#in cludevoid mai n()int a8=46,38,72,55,24,63,50,37;int max=*a, min=*a;for(i nt *p=a+1;pa+8;p+)if( ax=
24、*p;if( in=*p;coutmax minen dl;回答:FN=FN-1+FN-2。#in cludevoid mai n()int i;long f20=1,2;for(i=2 ;;i+)fi=;for(i=0 ; i20 ; i+)coutfi;回答:4.從鍵盤輸入一個4行4列的實數(shù)矩陣到一個二維數(shù)組中,完成以下程序,求出主對角線上元素之積。#in cludevoid mai n()double a44=0,r=1;int i,j;for(i=0;i4;i+)for(j=0;j4;j+)20 i成以下程序,計算n!的值,即求(1!)+(1!+2!)+(1!+2!+3!)+i 1 n
25、 1+(1!+2!+3!+20!)。void mai n()int i,n;double s=0,t;for(i=1;i=20;i+) ;for(n=1; +) t=t* n;s=s+t; 回答:6.有一個數(shù)列,它的第一項為5,第二項為8,以后每一項都是它的前兩項之和,完成以下程序,產(chǎn)生出此數(shù)列的前10項,并依次顯示出來。#in cludevoid mai n()int a10;a0=5;for(int i=2;i10;i+)ai=;for(i=0;i10;i+)coutai;coute ndl;回答:六、程序改錯:1.要求下面程序的輸出結(jié)果為“100 20,在第1-7行中存在著3條語句錯誤,
26、指出錯誤語句行的行號,并改正錯誤。#in clude class Sint n;public:S() n=20; S(i nt nn) n=nn; ;void Show() cout * ; ;void shows(S &y)求下面程序的輸出結(jié)果為 “ 2 3 1, 在第 1-12 行中存在著3 條語句錯誤,指出錯誤語句行的行號,并改正錯誤。#include class P i nt n;public:void Setn(int val) n=val; void Show();void P:Show() etn(i+1); 求下面程序的輸出結(jié)果為“ d=16,f=25, 在第 1-14 行中存在著 3 條語句錯誤
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 制定個人發(fā)展計劃實現(xiàn)職業(yè)目標
- 助力班級學(xué)習氛圍的提升計劃
- 房企建造的臨時售樓部的財稅處理-記賬實操
- 生產(chǎn)過程中的風險管理計劃
- 促進社團校企合作計劃
- 臨時性勞動合同三篇
- 肝內(nèi)膽管細胞癌:病例討論(肝膽知識)
- 體育教培合作協(xié)議書范文
- 新疆工廠勞務(wù)合作協(xié)議書范文
- 甲方合作工廠協(xié)議書范文模板
- 國家中小學(xué)智慧教育平臺培訓(xùn)專題講座
- 高壓氧療法應(yīng)用于神經(jīng)系統(tǒng)疾病的研究進展
- 墻面繪畫策劃方案
- 高??蒲谐晒c技術(shù)轉(zhuǎn)移轉(zhuǎn)化
- 物流運輸生產(chǎn)能力評估報告
- 給排水實習報告篇
- 教育魅力:青年教師成長鑰匙
- 設(shè)立供應(yīng)鏈管理公司組建方案
- 權(quán)變管理理論
- 中班健康課件《生氣和快樂》
- 4.2海水的性質(zhì)第一課時教學(xué)設(shè)計高中地理人教版必修一
評論
0/150
提交評論