廣東海洋大學(xué)2005年第二學(xué)期c++試卷_第1頁(yè)
廣東海洋大學(xué)2005年第二學(xué)期c++試卷_第2頁(yè)
廣東海洋大學(xué)2005年第二學(xué)期c++試卷_第3頁(yè)
廣東海洋大學(xué)2005年第二學(xué)期c++試卷_第4頁(yè)
廣東海洋大學(xué)2005年第二學(xué)期c++試卷_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

廣東海洋大學(xué)2005年第二學(xué)期《C++程序設(shè)計(jì)》課考試題(A卷)一、選擇題(每題2分,共36分)TOC\o"1-5"\h\z1、由C++目標(biāo)文件連接而成的可執(zhí)行文件的缺省擴(kuò)展名為。AcppBexeCobjDlik2、在下面的函數(shù)聲明中,存在著語(yǔ)法錯(cuò)誤的是。AvoidBC(inta,int);BvoidBD(int,int);CvoidBE(int,int=5);DintBF(intx;inty);3、假定AB為一個(gè)類,則該類的拷貝構(gòu)造函數(shù)的聲明語(yǔ)句為。AB&(constABx);B.AB(constABx);C.AB(constAB&x);D.AB(constAB*x);4、對(duì)于結(jié)構(gòu)中定義的成員,其隱含訪問(wèn)權(quán)限為。ApublicBprotectedCprivateDstatic5、在下列表示引用的方法中,是正確的。已知:intm=10;int&x=m;B.int&y二10;C.int&z;D.float&t二&m;6、對(duì)于C/C++語(yǔ)言的函數(shù),下列敘述中正確的是。函數(shù)的定義不能嵌套,但函數(shù)調(diào)用可以嵌套函數(shù)的定義可以嵌套,但函數(shù)調(diào)用不能嵌套函數(shù)的定義和調(diào)用都不能嵌套函數(shù)的定義和調(diào)用都可以嵌套7、在一個(gè)被調(diào)用函數(shù)中,關(guān)于return語(yǔ)句使用的描述,是錯(cuò)誤的。被調(diào)用函數(shù)中可以不用return語(yǔ)句被調(diào)用函數(shù)中可以使用多個(gè)return語(yǔ)句被調(diào)用函數(shù)中,如果有返回值,就一定要有return語(yǔ)句被調(diào)用函數(shù)中,一個(gè)return語(yǔ)句可以返回多個(gè)值給調(diào)用函數(shù)8、在一個(gè)函數(shù)中,要求通過(guò)函數(shù)來(lái)實(shí)現(xiàn)一種不太復(fù)雜的功能,并且要求加快執(zhí)行速度,選用A.內(nèi)聯(lián)函數(shù)B.重載函數(shù)C.遞歸調(diào)用D.嵌套調(diào)用9、下列的各類函數(shù)中,不是類的成員函數(shù)。A.構(gòu)造函數(shù)B.析構(gòu)函數(shù)C.友元函數(shù)D.拷貝構(gòu)造函數(shù)10、不是構(gòu)造函數(shù)的特征A.構(gòu)造函數(shù)的函數(shù)名與類名相同B.構(gòu)造函數(shù)可以重載C.構(gòu)造函數(shù)可以設(shè)置缺省參數(shù)D.構(gòu)造函數(shù)必須指定類型說(shuō)明11、已知:print()函數(shù)是一個(gè)類的常成員函數(shù),它無(wú)返回值,下列表示中,是正確的。A.voidprint()const;B.constvoidprint();C.voidconstprint();D.voidprint(const);12、關(guān)于new運(yùn)算符的下列描述中,是錯(cuò)的。它可以用來(lái)動(dòng)態(tài)創(chuàng)建對(duì)象和對(duì)象數(shù)組使用它創(chuàng)建的對(duì)象和對(duì)象數(shù)組可以使用運(yùn)算符delete刪除使用它創(chuàng)建對(duì)象時(shí)要調(diào)用構(gòu)造函數(shù)D.使用它創(chuàng)建對(duì)象數(shù)組時(shí)必須指定初始值13、下列for循環(huán)的次數(shù)為。for(i=0,x=0;!x&&i〈=5;i++)A.5B.6C.1D.無(wú)限14、對(duì)于"int*pa[5];"的描述中,是正確的。pa是一個(gè)指向數(shù)組的指針,所指向的數(shù)組是5個(gè)int型元素pa是一個(gè)指向某數(shù)組中第5個(gè)元素的指針,該元素是int型變量pa[5]表示某個(gè)元素的第5個(gè)元素的值pa是一個(gè)具有5個(gè)元素的指針數(shù)組,每個(gè)元素是一個(gè)int型指針

TOC\o"1-5"\h\z15、有以下程序段:inta[10]={l,2,3,4,5,6,7,&9,10},*p=&a[3],b;b=p[6];則b中值是。A、10B、6C、8D、916、設(shè)正x、y均為整型變量,且x=10,y=3,則以下語(yǔ)句的輸出結(jié)果是。printf("%d,%d,%d\n",++x,++y,x--);A、10,4,11B、11,4,11C、10,4,10D、9,4,1017、下面的程序,輸出結(jié)果為。#include〈stdio.h〉voidfun(char*p){chart;f(*p!='\0'){t二*p++;fun(p);辻(t!='\0')printf("%c",t);}}voidmain(){char*a;a="1234";fun(a);}A、運(yùn)行出錯(cuò)B、1324C、4231D、432118、下面的程序,輸出結(jié)果為。#include〈stdio.h〉voidmain(){int*p,i;inta[]={2,6,8,7,9};p=a;i=2;printf("%d\t%d\t%d\t%d\t%d\n",*(a+i),a[p-a],*p++,*++p,*(&a[i]));}A、86668B、82288C、82688D、86868二、填空(后3題每空2分,其余每空1分,共20分)TOC\o"1-5"\h\z1、已知'A'('Z'的ASCII碼為65(90,當(dāng)執(zhí)行“intx='D'+5;"語(yǔ)句后x的值為。2、表達(dá)式float(25)/4和int(14.6)%5的值分別為和。3、關(guān)系表達(dá)式x+y>5的相反表達(dá)式為。4、舉出C++中兩種用戶自定義的數(shù)據(jù)類型:、5、執(zhí)行“typedefintABC[10];”語(yǔ)句把ABC定義為具有10個(gè)整型元素的,那么語(yǔ)句“ABCa;”等價(jià)的語(yǔ)句是:。6、當(dāng)一個(gè)類對(duì)象離開(kāi)它的作用域時(shí),系統(tǒng)將自動(dòng)調(diào)用該類的。7、在C++中,雖然友元提供了類之間數(shù)據(jù)進(jìn)行訪問(wèn)的一種方式,但它破壞了面向?qū)ο蟪绦蛟O(shè)計(jì)的特性。8、使用const語(yǔ)句定義一個(gè)標(biāo)識(shí)符常量時(shí),則必須對(duì)它同時(shí)進(jìn)行。9、設(shè)變量均為int型,則表達(dá)式(b=51,i=b++)的值是。

10、全局變量和若不顯示初始化,則自動(dòng)初始化為0。11、若需要把一個(gè)函數(shù)“voidFO;”定義為一個(gè)類AB的友元函數(shù),則應(yīng)在類AB的定義中加入一條語(yǔ)句:12、假定p所指對(duì)象的值為25,p+1所指對(duì)象的值為46,則*++p的值為。13、假定AB為一個(gè)類,則執(zhí)行“ABa[10];”語(yǔ)句時(shí),系統(tǒng)自動(dòng)調(diào)用該類構(gòu)造函數(shù)的次數(shù)為。14、假定要?jiǎng)討B(tài)分配一個(gè)類型為Worker的具有n個(gè)元素的數(shù)組,并由r指向這個(gè)動(dòng)態(tài)數(shù)組,則使用的語(yǔ)句為三、讀程題(每小題5分,共20分)1、#include〈iostream.h〉voidmain(){ints=0;for(inti=1;i〈=5;i++)s+=i*i;cout〈〈"s二"〈〈s〈〈endl;}該程序的運(yùn)行結(jié)果是:2、#include〈iostream.h〉#include〈stdlib.h〉doubleSD(inta,intb,charop){doublex;switch(op){case'+':x=double(a)+b;break;case'-':x=double(a)-b;break;case'*':x=double(a)*b;break;case'/':if(b)x=double(a)/b;elseexit(1);break;default:exit(1);}returnx;}voidmain(){intx=20,y=8;cout〈〈SD(x,y,'-')〈〈"";

cout〈〈SD(x,y,'*')〈〈"";cout〈〈SD(x+y,y,'/')〈〈endl;}該程序的運(yùn)行結(jié)果是:3、#include〈iostream.h〉#include〈string.h〉structWorker{charname[15];//姓名intage;//年齡floatpay;//工資};voidmain(){Workerx;char*t="WeiRong";intd=45;floatf=1235;strcpy(,t);x.age=d;x.pay=f;cout〈〈〈〈""〈〈x.age〈〈""〈〈x.pay〈〈endl;}該程序的運(yùn)行結(jié)果是:4、#include〈iomanip.h〉voidLG(int*&a,int&m){a=newint[m];int*p=a;for(inti=0;i〈m;i++)*p++=i*i;}voidmain(){int*b,n=5;LG(b,n);for(inti=0;i〈n;i++)cout〈〈b[n-iT]〈〈"";cout〈〈endl;delete[]b;}該程序的運(yùn)行結(jié)果是:四、讀程填空,將答案直接寫(xiě)在題中的橫線上。(共9分)1、斐波那契數(shù)列的第1和第2個(gè)數(shù)分別為0和1,從第三個(gè)數(shù)開(kāi)始,每個(gè)數(shù)等于其兩個(gè)數(shù)之和。求斐波那契數(shù)列中的前20個(gè)數(shù),要求每行輸出5個(gè)數(shù)。(3分)#include〈iostream.h〉#include〈iomanip.h〉voidmain(){

intf,fl,f2,i;cout〈〈"斐波那契數(shù)列的前20個(gè)數(shù)為:\n";f1=0;f2=1;cout〈〈setw(8)〈〈fl〈〈setw(8)〈〈f2;for(i=3;i〈=20;i++){TOC\o"1-5"\h\zf=;cout〈〈setw(8)<<f;if()cout〈〈endl;fl=f2;f2二;}cout〈〈endl;}2、已知一個(gè)類的定義如下:(6分)#include〈iostream.h〉classAA{inta[10];intn;public:voidSetA(intaa[],intnn)//用數(shù)組aa初始化數(shù)據(jù)成員a,用nn初始化數(shù)據(jù)成員n{}intMaxA();//從數(shù)組a中前n個(gè)元素中查找最大值voidSortA();//對(duì)數(shù)組a中前n個(gè)元素進(jìn)行從小到大排序voidPrintA();//依次輸出數(shù)組a中的前n個(gè)元素,最后輸出一個(gè)換行{……}};intAA::MaxA()voidAA::SortA(){}voidmain(){inta[10]={23,78,46,55,62,76,90,25,38,42};__;x.SetA(a,8);int;;x.PrintA();cout〈〈m〈〈endl;}該程序運(yùn)行結(jié)果為:232546556276789090五、編程題。(15分)按照下列要求編寫(xiě)程序:寫(xiě)一個(gè)函數(shù)voidstrsort(char*s),調(diào)用該函數(shù)能將給定的字符串按由小到大排序。(其中:該函數(shù)參數(shù)s:為指向所要排序的字符串的首地址。該函數(shù)名為:strsort該函數(shù)返回類型為:void)(5分)通過(guò)調(diào)用上面排序函數(shù)編程實(shí)現(xiàn):將從鍵盤(pán)任意輸入的兩字符串先按由小到大排序輸出,再和并,并將和并后的字符串也按由小到大排序輸出。(10分廣東海洋大學(xué)2005年第二學(xué)期《C++程序設(shè)計(jì)》課程考試(A)答案及評(píng)分標(biāo)準(zhǔn)一、選擇題(每題2分,共36分)評(píng)分標(biāo)準(zhǔn):選對(duì)者得2分,否則不得分。1-5:BCCAA6-10:ADACD11-15:ADBDA16T8:CDA二、填空(后3題每空2分,其余每空1分,共20分)評(píng)分標(biāo)準(zhǔn):每題與參考答案相同者得分,否則不得分。1、732、6.2543、x〈=54、類結(jié)構(gòu)5、數(shù)組inta[10];6、析構(gòu)函數(shù)7、封裝性8、初始化9、5110、靜態(tài)變量

11、friendvoidF();12、4613、1014、Worker*r=newWorker[n];三、讀程題(每小題5分,共20分)評(píng)分標(biāo)準(zhǔn):每題與參考答案的數(shù)據(jù)和顯示格式完全相同者得分,否則酌情給分。1、s=552、121603.53、WeiRong4512354、169410四、讀程填空。(共9分)評(píng)分標(biāo)準(zhǔn):每題與參考答案完全相同者得分,否則酌情給分。1、(1)f1+f2(2)i%5==0(3)f1+f22、(1)AAx;(2)m=x.MaxA();(3)x.SortA();五、編程題。(任選15分的題)請(qǐng)根據(jù)編寫(xiě)情況酌情給分。1、voidstrsort(char*p){intij,n;chart,*w;w=p;for(n=0;*w!二'\0';n++)//求串長(zhǎng)nw++;for(i=0;i〈n-1;i++)〃對(duì)串由小到大排序for(j二i+1;j〈n;j++)if(p[i]〉p[j]){t=p[i];p[i]二p[j];p[j]=t;}}2、#include〈iostream.

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論