同濟大學c++C卷答案_第1頁
同濟大學c++C卷答案_第2頁
同濟大學c++C卷答案_第3頁
同濟大學c++C卷答案_第4頁
同濟大學c++C卷答案_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

同濟大學c++C卷答案同濟大學c++C卷答案同濟大學c++C卷答案同濟大學c++C卷答案編制僅供參考審核批準生效日期地址:電話:傳真:郵編:同濟大學課程考核試卷課號:課名:C++語言 考試考查:考查此卷選為:期中考試()、期終考試(√)、重考()試卷年級專業(yè)學號姓名得分一、選擇填空(30分)1)按照標識符的要求,下列符號中不屬于標識符組成部分的是( D )。A、大小寫字母 B、數(shù)字 C、下劃線 D、~!@#$%^&*2)若有定義:charc;intx;floaty;doublez;則表達式x+c-(int)z/y值的類型為( C )。A、charB、intC、floatD、double3)有下列定義:chars[10],*p,s1[]={“xyz”};以下語句中正確的是( B )。A、s=“abcdefgh”; B、p=“abcdefgh”;C、s=s1; D、p=&s;cin>>p;4)以下數(shù)組定義中正確的是(C )。A、intn=5;inta[n];B、intb[3][]={1,2,3};C、intc[3][4]={0}; D、intd[][]={2,4,6,8};5)已知inta(5),b(3);當邏輯表達式語句!a&&b++;b||a--||a+b;執(zhí)行完畢后,a和b的值分別為( D )。A、4,4 B、4,3 C、5,4 D、56)以下常量中不是字符型常量的是(B )。A、‘\101’ B、"a" C、‘+’ D、‘\n7)對于int*p();的描述,(B)是正確的。A、定義一個指向某int型函數(shù)的指針變量p。B、函數(shù)p的聲明,該函數(shù)的返回值是一個指向整型數(shù)據(jù)的指針值。C、定義函數(shù)p,函數(shù)p的返回值為int型數(shù)據(jù)。D、定義一個int型指針變量p,指向int型數(shù)據(jù)。8)下列變量定義中,不正確的是( D )。A、inta(0),b=1; B、inta,&b=a; C、inta,*b=&a; D、inta=b=1;9)有下列定義:intc[10];int*p;以下執(zhí)行語句中不能使數(shù)組c中元素c[1]的值為1的是(C )。A、*(c+1)=1; B、p=c;*(p+1)=1;C、*++c=1; D、p=c;*++p=1;10)當被調(diào)函數(shù)的形參是數(shù)組,調(diào)用函數(shù)的實參用數(shù)組名相對應(yīng),實現(xiàn)函數(shù)調(diào)用時,下列描述中,(B )是錯誤的:A、實參數(shù)組把地址值傳遞給形參數(shù)組,使得兩者指向內(nèi)存的同一片存儲域;B、函數(shù)調(diào)用時系統(tǒng)將實參數(shù)組元素拷貝一個副本給形參數(shù)組;C、若實參是一維數(shù)組名,其對應(yīng)的一維形參數(shù)組可以不必說明數(shù)組大小,只需在數(shù)組名后跟一對[]說明即可,但兩者類型應(yīng)保持一致;D、在被調(diào)函數(shù)中對形參數(shù)組的任何改變,會影響實參數(shù)組所指內(nèi)存存儲單元中的內(nèi)容。11)在下列關(guān)鍵字中,用以說明類中公有成員的是( A ):A、public B、privateC、protected D、friend12)以下關(guān)于構(gòu)造函數(shù)特征描述中,( D )是不正確的:A、構(gòu)造函數(shù)的函數(shù)名與類名相同; B、構(gòu)造函數(shù)允許重載;C、構(gòu)造函數(shù)可以設(shè)置缺省參數(shù); D、構(gòu)造函數(shù)必須指定其函數(shù)類型說明。13)下面關(guān)于對象概念的敘述中,( A )是錯誤的。A、對象就是結(jié)構(gòu)體變量;B、對象代表正在創(chuàng)建的系統(tǒng)中的一個實體; C、對象是一個狀態(tài)和操作(或方法)的封裝體;D、對象之間的信息傳遞是通過發(fā)送消息進行的。14)在私有繼承中,基類的公有成員將成為其派生類的( C)成員。A、公有B、保護C、私有D、friend15)設(shè)Date是一個日期類,date1是該類的一個對象,p是指向date1的Date類指針,GetDate()是Date類的一個公有成員函數(shù),則以下不正確的表達式是( A )。A、 ()B、 ()C、 (*p).Date::GetDate()D、 p->GetDate()二、寫出下列各程序運行時的輸出結(jié)果(50分)1.#include<>voidmain(){ inti=10,j; floata; j=1/(10/3);a=i/; cout<<j<<endl;cout<<a<<endl; }答:02.#include<>voidmain(){ inti,j; i=j=2; if(i=1)if(j==2)cout<<(i,i+j)<<endl;elsecout<<(i=i-j)<<endl; cout<<i<<“”<<j<<endl;} 答:3 12 3.#include<>voidswap(int&x,inty){ intt=x; x=y;y=t;}voidmain(){ inta=10,b=15; swap(a,b); cout<<“a=”<<a<<“b=”<<b<<endl;} 答:a=15b=154.#include<>intx=1;voidfun(int*p){ staticintx=2; *p*=x-1; x+=2;}voidmain(){ inti; for(i=1;i<4;i++){fun(&x); cout<<x<<endl;}}答:135.15#include<>voidf(char*p,intn){ inti; for(i=0;i<n;i++)cout<<*(p+i);}voidmain(){ chars[]={“09ABCDEF”}; f(s+8,5);}答:89ABC 6.#include<>voidmain(){ intx(5); do{ switch(x%2){ case1:x--;break;case2:x++;break;}x--;cout<<x<<endl;}while(x>0);答:3} 1 -17.#include<>voidf(int*p,intn){ for(inti=0;i<n;i++)p[i]=i+1;}voidmain(){ inta[3][3],i,j;f(a[0],9);for(i=0;i<3;i++){for(j=0;j<3;j++)cout<<a[i][j]<<“”;cout<<endl;}答:123}4567898.#include<>voidmain(){ inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};int*p1[3]={a[0],a[1],a[2]};int(*p2)[4]=a;int*p=&a[0][0];cout<<*(p+1)<<endl;cout<<*(p1[1]+2)<<endl;cout<<*(*(p2+2)+3)<<endl;}答:27129.#include<>classTPoint{public: TPoint(){x=0;y=0;} TPoint(inti,intj){x=i;y=j;} voidDisplay();private: intx,y;};voidTPoint::Display(){cout<<x<<“,”<<y<<endl;}voidmain(){ TPointp1(4,5),p2,p3(-1,8); (); (); ();}答:4,50,0-1,810.#include<>#include<>classStaff{ private: charname[32]; floatwage,tax,wAfterTax; public: voidSetData(char*s,floatw) { strcpy(name,s); wage=w;} voidShow() {cout<<name<<endl; cout<<wage<<""; cout<<tax<<""; cout<<wAfterTax<<endl;} voidTaxCalc();}; voidStaff::TaxCalc(){floatp; if(wage<p=; elseif(wage<2000)p=; elseif(wage<5000)p=; elsep=; tax=p*wage; wAfterTax=wage-tax;}voidmain(){ inti;Staffst[3],*p; st[0].SetData("Zhang",1800); st[1].SetData("Wang",4000); st[2].SetData("Zhao",6000); p=st; for(i=0;i<3;i++) (p+i)->TaxCalc(); for(i=0;i<3;i++) (p+i)->Show();}答:Zhang 1800901710 Wang 40004003600Zhao 60009005100

三、編程(20分)1)某班有30個學生,5門功課。試根據(jù)sort函數(shù)的原型聲明,寫出按學生課程總分由高到低進行排序的sort函數(shù)程序。#include<>#include<>structstudent{ intnum; charname[32]; floatscore[5]; floattotal; um; gets(stu[i].name); sum=; for(j=0;j<5;j++) { cin>>stu[i].score[j]; sum+=stu[i].score[j];} stu[i].total=sum;} sort(stu,30); for(i=0;i<30;i++) { cout<<stu[i].num<<endl;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論