




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、大連理工大學(xué)網(wǎng)絡(luò)教育學(xué)院2017年秋C/C+語言程序設(shè)計期末考試復(fù)習(xí)題 注意事項:本復(fù)習(xí)題滿分共: 400 分。一、單選題1、下列 while 循環(huán)的執(zhí)行次數(shù)是( A )。 while(int i=0) i+;A0B1C5D.無限2、下列哪個函數(shù)不是類的成員函數(shù)。 ( D )A. 析構(gòu)函數(shù)B. 構(gòu)造函數(shù)C. 拷貝構(gòu)造函數(shù)D. 友元函數(shù)3、 在執(zhí)行 int a3=1,2,3,4,5,6 ;語句后, a00 的值是( B )。A. 4B. 1C. 2D. 54、 C+中用3個保留字實現(xiàn)異常處理,除了throw和catch夕卜,還有(C )。A. ifB. classC. tryD return5、
2、下面表達(dá)式中錯誤的是(C )。A b=a+B a/=2C a+b=5D a=5,b=6,c=76、在定義 int a5 ;之后,對 a 的引用正確的是( D )。A a5BaC a(5)D a07、類中將關(guān)鍵字(A )寫在函數(shù)體之前函數(shù)頭之后,說明該函數(shù)是一個常成員函數(shù)(或 const 成員函數(shù)),可以防止函數(shù)改變數(shù)據(jù)成員的值。A constB staticC friendD void8、 設(shè)int n=10,i=3;則賦值運(yùn)算n%=i+1執(zhí)行后,n的值是(C )。A0B3C2D19、 C+沖用3個保留字實現(xiàn)異常處理,除了try和catch夕卜,還有(C )。AifBclassC th row
3、D return10、設(shè)有定義 int x; double v;,則 10+x+v 值的數(shù)據(jù)類型是( B )。AintB doubleC charD. 不確定11、對于while、dowhile循環(huán)結(jié)果說法正確的是( C)。A. 只是表達(dá)形式不同B. while 結(jié)構(gòu)中的語句至少執(zhí)行一次C. dowhile結(jié)構(gòu)中的語句至少執(zhí)行一次D. 條件成立時,他們有可能一次也不執(zhí)行12、下列運(yùn)算符中優(yōu)先級最高的為 ( A) 。A. !B. %C. -=D. &13、有關(guān)構(gòu)造函數(shù)的說法錯誤的是 (D ) 。A. 構(gòu)造函數(shù)名字和類的名字一樣B. 構(gòu)造函數(shù)在說明類變量時自動執(zhí)行C. 構(gòu)造函數(shù)無任何函數(shù)類型D.
4、構(gòu)造函數(shù)有且只有一個14、通常的拷貝構(gòu)造函數(shù)的參數(shù)是( C )。A. 某個對象名B. 某個對象的成員名C. 某個對象的引用名D. 某個對象的指針名15、為了判斷兩個字符串si和s2是否相等,應(yīng)當(dāng)使用(D)。Aif(s1=s2)Bif(s1=s2)C if(strcpy(s1,s2)D if(strcmp(s1,s2)=0)16、在定義 int a36; 后,第 10 個元素是( B)。Aa24B a1 3C a3 1 4217、不是C語言的浮點類型的是(A. floatB. doubleC. long doubleD. real18、下面不是字符常量是 ( ) A “t ”B t C D t
5、19、C 語言對嵌套if 語句的規(guī)定是:)。 D。Aelse 總是與()配對。 DA. 其之前最近的 ifC. 縮進(jìn)位置相同的 if20、下面代碼段的執(zhí)行結(jié)果是int i;for(i=1;i10;i+)if(i%5=0)break;B. 第一個 ifD. 其之前最近且不帶 else 的 if( ) 。 Dprintf(%d ,i);printf(endn);A end B 1 2 3 4 5 end C 1 2 3 4 5 D 1 2 3 4 end21、以下程序中調(diào)用 scanf 函數(shù)給變量 a 輸入數(shù)值的方法是錯誤的,原因是( )。 B int a,*p=&a;scanf( “ %d ”,
6、 *p ); *p 表示的是指針變量 p 的地址B. *p 表示的是變量 a 的值,而不是變量 a 的地址C. *p 表示的是指針變量 p 的值D. *p 只能用來說明 p 是一個指針變量22、設(shè) int a10 = 15, 12, 7, 31,47, 20 , *p,下列語句中正確的是( )。BA. for ( p = a; a ( p + 10 ); a+ );B. for ( p = a; p ( a + 10); p+ );C. for( p = a, a = a + 10; p a; p+ );D. for( p = a; a age B. C. p - age D.28、C+源文件
7、的擴(kuò)展名為()。AA. cppB. cC. txtD. exe29、 關(guān)于C+和C語言的描述中,()是錯誤的CA. C是C+的一個子集B. C程序在C+環(huán)境可以運(yùn)行C. C+程序在C環(huán)境可以運(yùn)行D. C+是面向?qū)ο蟮亩鳦是面向過程的、填空題1、 表達(dá)式sqrt(81) 和pow(6,3)的值分別為 和。9、2162、 空串的長度為 ,存儲它需要占用 個字節(jié)。0、13、 strlen(apple)的值為 。54、 使用cin和cout進(jìn)行輸入輸出操作的程序必須包含頭文件 ,其語句格式為 #in clude5、 對一個一維字符數(shù)組a進(jìn)行初始化的數(shù)據(jù)為12345,則a0和a3元素對應(yīng)的初值分別為 和
8、。1 46、 對一個類中的數(shù)據(jù)成員的初始化可以通過構(gòu)造函數(shù)中的 實現(xiàn),也可以通過構(gòu)造函數(shù)中的 實現(xiàn)。初始化表、函數(shù)體7、隨機(jī)函數(shù)rand()%20的值在至區(qū)間內(nèi)。0、19&若需要把一個函數(shù)“void F()定義為一個類AB的友元函數(shù),則應(yīng)在類AB定義中加入一條語句: 。friend void F();9、根據(jù)給定的程序功能,將程序代碼補(bǔ)充完整,每空只填一條語句 定義并調(diào)用排序函數(shù),對一維數(shù)組進(jìn)行降序排序。#in clude ; /*宏定義常量SIZE為10 */void sort(int a, int size ); /*冒泡排序函數(shù) */void mai n()int arraySIZE=2
9、,6,4,8,10,12,89,68,45,38, i; ;/*調(diào)用排序函數(shù)*/for( i=0;iSIZE;i+) ;/*輸出數(shù)組元素*/void sort(i nt a, int size )int pass ,k ,t;for(pass=0; ;pass+)for( k=0; ksize-pass-1 ;k+)if()/*降序排序*/ t=ak;ak=ak+1;ak+1=t;參考答案:本題考察數(shù)組排序 #define SIZE 10; sort(array, SIZE); printf(%5d,arrayi); passak+1;判斷是否為素數(shù)。10、根據(jù)給定的程序功能,將程序代碼補(bǔ)充完
10、整,每空只填一條語句,輸入一個正整數(shù),#in clude /*引用頭文件*/void mai n();/*定義變量m與i*/printf(”輸入一個正整數(shù)m:n);/*輸入整數(shù)m的值*/for ( i =2; i =sqrt(m); i + ) /*尋找能整除m的因子i*/if ()break ;/* 輸出是否為素數(shù)*/if (printf(%d是素數(shù).n, m);elseprin tf(%d不是素數(shù).n”,m);參考答案:本題考察數(shù)控制結(jié)構(gòu) #include int m, i; scanf(%d,&m); m% i = 0 isqrt(m)11、以下程序?qū)崿F(xiàn)字符串的復(fù)制,將程序補(bǔ)充完整。#i
11、n elude char* fuzhi(char *p1,char *p2 )int i;for(i = 0;i +)*(p1 + i) = *(p2 + i);return p1;int jishu(char *p)int i;for(i = 0;i +);int mai n ()char a20 , b20; ;dlmag = dlmag +c2. dImag; return c; Complex Complex:operator-(); cout ( dReal , dImag ) endl;Shape類派生矩形類14、根據(jù)給定的程序功能,將程序代碼補(bǔ)充完整,每空只填一條語句,抽象類(R
12、ectangle)和圓類(Circle) , area()為求圖形面積的成員函數(shù)。#in elude #in elude class Shape public:; xe o ()4、 關(guān)鍵字中,用以說明類中公有成員的是private 。(5、 一個類只能有一個對象。()6、 拷貝構(gòu)造函數(shù)不是類的成員函數(shù)。()7、內(nèi)聯(lián)函數(shù)的關(guān)鍵字為 friend 。()8、構(gòu)造派生類的對象時,就要對基類數(shù)據(jù)成員、新增數(shù)據(jù)成員和成員對象的數(shù)據(jù)成員進(jìn)行初始化。 ()9、一個派生類可以同時有多個基類,這種情況稱為單繼承。()10、抽象類不能實例化。 ( )11、 在C+類中可以包含私有、公有和友元三種具有不同訪問控制
13、權(quán)的成員。()12、 定義枚舉類型的關(guān)鍵字是union 。()13、設(shè)有定義 int x; double v; 則 5+x+v 值的數(shù)據(jù)類型是 int 。()14、strcat() 函數(shù)的作用是求字符串長度。 ()15、 說明靜態(tài)數(shù)據(jù)成員時,前邊要加關(guān)鍵字static 。()16、 成員函數(shù)可以重載。()17、delete 的功能是動態(tài)分配內(nèi)存。 ()18、關(guān)鍵字中,用以說明類中公有成員的是protected 。(19、流是一種抽象, 它負(fù)責(zé)在數(shù)據(jù)的生產(chǎn)者和數(shù)據(jù)的消費(fèi)者之間建立聯(lián)系, 并管理數(shù)據(jù)的流動。( )20、類型兼容規(guī)則是指在需要基類對象的任何地方,都可以使用公有派生類的對象來替代。()
14、21 、 do-while 循環(huán)可以寫成 while 循環(huán)。( )22、所謂指令,就是計算機(jī)可以識別的命令。()23、使用內(nèi)聯(lián)函數(shù)是以犧牲增大空間開銷為代價的。24、對象是系統(tǒng)中用來描述客觀事物的一個實體,25、 內(nèi)聯(lián)函數(shù)的關(guān)鍵字為 void 。()()它是用來構(gòu)成系統(tǒng)的一個基本單位。 ()26、友元關(guān)系可以繼承。 () 判斷題答案12 、X 3 、X 4 、X 5 、X11、X12、X13、X14、X15、V16、V17、X18、X19、V20、V21 、V22、V23、V24、V25、X6、X 7 、X8、9 、x26、X四、閱讀下列程序,請在答題卡上寫出輸出結(jié)果1、#includevoi
15、d main()int x=1,y=2,z=3;x+=y+=z;cout(xyy:x),;cout(xyx+:y+),;coutyendl;輸出結(jié)果: 6,5,62、#include void main()int i;for(i=4;i=10;i+)if(i%3=0)continue;couti;輸出結(jié)果: 4578103、#includeclass CSampleprivate:int i;static int k;public:CSample();void Display();CSample:CSample()i=0;k+;void CSample:Display()couti=i,k=k
16、endl;int CSample:k=0;void main()CSample a,b;();();輸出結(jié)果:i=0,k=2i=0,k=24、#include void main()int x=1,y=0;switch(x)case 1:switch(y)case 1:coutsecond ;break;case 0:coutfirst ;break;case 2:coutthirdn;輸出結(jié)果: first third5、#includeclass CSampleint i;public:CSample();void Display();CSample();CSample:CSample()
17、coutConstructor,;i=0;void CSample:Display()couti=i,;CSample:CSample()coutDestructorendl;void main()CSample a;();輸出結(jié)果: Constructor,i=0,Destructor6、#includeconst int N=8;void main()int aN=1,2,3,4,5,6,7,8;int i,x;for(i=0; iN/2; i+)x=ai;ai=aN-1-i;aN-1-i=x;for(i=0; iN; i+)7、 #include class CSampleint i;p
18、ublic:CSample();CSample(int val);void Display();CSample();CSample:CSample()coutConstructor1endl;i=0;CSample:CSample(int val)coutConstructor2endl;i=val;void CSample:Display()couti=iendl;CSample:CSample()coutDestructorendl;void main()CSample a,b(10);();();輸出結(jié)果:Constructor1Constructor2i=0i=10Destructor
19、Destructor8、本題重點考察繼承與多態(tài)# include t1.show();endl;class TwoDimensionalShape how();TwoDimensionalShape * members3 ;elsecout () is older.endl;return 0;運(yùn)行結(jié)果:copy constructdestruct LindaLinda is older.destruct Lindadestruct noName五、簡答題(本大題共 8 小題,共 40分)1、簡述結(jié)構(gòu)化的程序設(shè)計、面向?qū)ο蟮某绦蛟O(shè)計的基本思想。解答要點: 結(jié)構(gòu)化的程序設(shè)計將數(shù)據(jù)和對數(shù)據(jù)的操作分離
20、, 程序是由一個個的函數(shù)組成 的,面向?qū)ο蟮某绦蛟O(shè)計將數(shù)據(jù)和操作封裝在一起, 程序是由一個個對象組成的, 對象之間 通過接口進(jìn)行通信,它能夠較好地支持程序代碼的復(fù)用。2、虛析構(gòu)函數(shù)有什么作用解答要點:對象銷毀時,需要調(diào)用析構(gòu)函數(shù)。在多態(tài)調(diào)用時,是用基類的指針訪問派生類的對象。 如果析構(gòu)函數(shù)是非虛函數(shù), 則基類指針只能訪問基類的析構(gòu)函數(shù), 而不能訪問派生類的析構(gòu) 函數(shù),導(dǎo)致派生類對象銷毀時,沒有調(diào)用派生類的析構(gòu)函數(shù),只是調(diào)用了基類的析構(gòu)函數(shù)。 如果把析構(gòu)函數(shù)定義成虛函數(shù),則可克服這個問題。3、拷貝構(gòu)造函數(shù)在哪幾種情況下調(diào)用解答要點:用一個對象初始化另一個對象時當(dāng)用對象作為函數(shù)參數(shù)傳遞時當(dāng)函數(shù)返回
21、對象時4、函數(shù)重載與函數(shù)覆蓋有什么不同,它們與多態(tài)有什么關(guān)系解答要點:函數(shù)重載是指函數(shù)名相同, 而函數(shù)的參數(shù)個數(shù)或類型不同; 覆蓋是指在派生類中成員函 數(shù)與基類成員函數(shù)的函數(shù)名、參數(shù)個數(shù)、類型與返回值均相同;C+中正是通過虛函數(shù)的覆蓋,實現(xiàn)多態(tài)的功能。5、C+ 繼承是如何工作的解答要點:繼承使得派生類能夠使用基類的公有和保護(hù)成員, 從而實現(xiàn)代碼的復(fù)用, 派生類可以增 加成員, 也可以隱藏和覆蓋基類的成員。 對于公有繼承, 基類成員的訪問權(quán)限在派生類保持 不變。6、類與對象有什么區(qū)別解答要點:類是類型, 是對象的抽象, 對象是類的具體實例。一個類可以有多個對象,每個對象都 有自己的存儲單元,而類
22、不占存儲單元。7、實現(xiàn)將輸入的字符串反序輸出,如輸入windows 輸出 swodniw 。找出并改正程序中的語法及邏輯錯誤(在原程序中畫出出錯語句,在右側(cè)修改成正確的語句 , 同一類錯誤算一處錯 誤)。void main() char c100,c1;int i ,j, k;printf(Enter a string: );scanf(%c,c);k=strlen(c);for (i=0,j=k-1;ik ;i+,j-)c1=ci;ci=cj;cj=c1;printf(%sn,c);本題考察字符數(shù)組參考答案:( 1) 缺少頭文件 #include 缺少頭文件 #include ( 2) sc
23、anf(%c,c); 改為 scanf(%s,c);3) for (i=0,j=k-1;ik;i+,j-)改為 for (i=0,j=k-1;ik/2;i+,j-)(4) c1=ci;ci=cj;cj=c1; 改為 c1=ci;ci=cj;cj=c1; 8、分析以下代碼段,回答問題。char a=how are you;char *p=how are you;(1)a2= k;和p2= k;哪個是錯誤的用法為什么( 2)a+; 和 p+; 哪個是錯誤的用法為什么本題考察字符數(shù)組與字符串參考答案:( 1 )p2= k 錯誤,因為指針 p 只能指向字符串,不能存儲字符串和字符!( 2)a+ 錯誤,
24、因為數(shù)組名為常量,其值不能修改!9、 count 函數(shù)統(tǒng)計字符串 str 中數(shù)字的數(shù)目,找出并改正函數(shù)定義中存在的錯誤。int count(char str )int i, num;for( i=0; i sizeof(str); i+)if( 0=stri=9)num+1;參考答案( 1 ) int i, num;改為 int i, num=0;( 2) i sizeof(str);改為 stri!=0 或者 strlen(str)( 3) if( 0=stri=0& stri=9)(4) num+1;改為num+;或者+num;(5) 缺少 return num;或?qū)⒑瘮?shù)類型改為 void
25、函數(shù)中輸入num值六、編程題1編寫一個程序輸入一華氏溫度,編程輸出攝氏溫度。已知:華氏溫度(F)轉(zhuǎn)換為攝氏溫度(C)的計算公式為:C (F 32)* 5/9#includevoid main()float c,f;coutf;c=(f-32)*5/9;cout 攝氏溫度: cendl;2、編寫一個程序?qū)⑤斎氲囊粋€三位正整數(shù)逆轉(zhuǎn),例如,輸入123,輸出 321。#includevoid main()int n,i,j,k;coutn;i=n/100; etdata(1, 張三);stud1.setdata(2,李四);stud2.setdata(3,王五);for(int i=0;i3;i+)studi.dispdata();4、編寫一個程序
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 工作與生活兩不誤的策略
- 工作中的自律性對提高效率的影響
- 工業(yè)自動化發(fā)展趨勢及技術(shù)革新
- 工業(yè)設(shè)計的美學(xué)與產(chǎn)品設(shè)計實踐
- 工作效率提升技巧與策略
- 工業(yè)領(lǐng)域物聯(lián)網(wǎng)環(huán)保應(yīng)用研究
- 工作模式變革下的組織文化創(chuàng)新
- 工作流程優(yōu)化與持續(xù)改進(jìn)方法
- 工廠安全生產(chǎn)與應(yīng)急預(yù)案制作
- 工程建筑中巖土工程的實踐應(yīng)用
- 福建省2025年6月普通高中學(xué)業(yè)水平合格性考試地理模擬卷二(含答案)
- 2025年山東省濟(jì)寧市泗水縣中考三模地理試題(含答案)
- 2025年文件歸檔管理考試題及答案分析
- 文明小學(xué)生主題班會課件
- 2024年中考?xì)v史試題分類匯編:世界近代史(原卷版+解析)
- 購買私人地皮合同范本
- T/CWPIA 2-2020戶外重組竹地板鋪裝技術(shù)規(guī)范
- 2025屆黃岡市重點中學(xué)八下數(shù)學(xué)期末統(tǒng)考試題含解析
- 2025年英語四級考試模擬試卷及答案
- 跨學(xué)科視域下道德與法治與心理健康教育融合的探究
- 智能在線問卷調(diào)查系統(tǒng)開發(fā)合同
評論
0/150
提交評論