




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、全國2012年1月高等教育自學考試C+程序設計試題課程代碼:04737、單項選擇題(本大題共20小題,每小題1分,共20分)在每小題列出的四個備選項中只有一個是符合題目要求的,請將其代碼填寫在題后的 括號內。錯選、多選或未選均無分。.int)返回兩參數中較大值,若求卜列哪項操作是將B.sort(a,1.如聲明對象數組,則下列描述正確的是()A.對每個元素均調用一次構造函數B.部分元素調用構造函數,其它元素不需調用C.均不需要調用構造函數D.只是首元素調用構造函數2 .不同對象調用同一成員函數時,this指針指向A.不同對象C.無對象3 .設存在函數intmax(int , 表達式正確的是()A
2、.int m=max(22 , max(59 , 70);B.int m=max(max(22 , 59), max(59 , 70);C.int m=max(max(22 , 70), 59);D.以上皆正確4 .一個類可擁有多少個構造函數)A.0個C.1或多個5 .在編譯指令中,嵌入指令是指()A.#includeC.#if6 .設存在數組a,其長度為LenA.reverse(a+a, Len , b);()B.相同對象D.不確定22, 59, 70三者中最大值,下列B.1個D.以上皆對B.#defineD.#elsea中元素復制到數組 b中() a+Len, b);C.find(a ,
3、a+Len, b);D.copy(a , a+Len , b);7 .下列哪個要素不是面向對象的關鍵要素()B.實參是形參的備份D.形參和實參無聯系()B.該類的成員函數中D.以上都不是A.模塊化B.抽象性C.封裝性D.繼承性8 .下列對于類的描述錯誤的是()A.類要先聲明后使用B.類是具有唯一標識的實體C.兩個類可以使用同一個名稱D.組成類的不僅有數據,還可以有對數據進行操作的函數9 .使用引用調用方式將實參傳給形參,下列說法正確的是(A )A.形參是實參的備份C.形參和實參共享同一對象10 .關于對象的性質,下列描述錯誤的是A.同一類對象之間可相互賦值B.不能使用對象數組C.對象可以用作函
4、數參數D.一個對象可以用作另一個類的成員11 .類的私有成員可在哪里被賦值(A.類體中C.A 和 B1 2.設存在數組a,其長度為Len,則下列哪個泛型算法用于反轉a中各元素()A.reverse(a, a+Len);B.sort(a, a+Len);C.find(a , a+Len, value);D.copy(a , a+Len , b);13 .用于標識八進制常量的前綴或后綴是 ()A.無B.后綴L或1C.前綴零D.前綴Ox14 .派生類中繼承的基類成員初始化如何進行()A.由派生類構造函數調用基類的構造函數進行B.由派生類構造函數進行C.由基類構造函數進行,無需派生類構造函數調用D.以
5、上皆不正確1 5.對于多重繼承,下列描述正確的是()A.所有基類使用相同的派生方式B.每個基類可使用不同派生方式C.只能是public派生D.只能是protected派生16 .下列關于類的權限描述錯誤的是()A.類本身的成員函數可以訪問自身的任何成員B.類的對象可以訪問該類的所有成員C.普通函數不能直接訪問類的公有成員,必須通過成員函數對其訪問D.一個類可以將另一個類的對象作為成員17 .運算符delete與哪個函數一起運行()A.構造函數B.析構函數C.主函數D.不與任何函數一起工作18 .一個類可以獲得另一個類的特性的機制稱為()A.抽象B.封裝C.繼承D.多態(tài)性19 .使用下列哪個格式
6、控制符可設置轉換十六進制為十進制()A.decB.octC.hexD.endl20 .對引用調用描述正確的是()A.分配新存儲空間B.修改已存儲空間的名稱為引用名C.引用名與已存在存儲空間無任何關聯D.將引用名標識符與一塊已存在儲區(qū)域相關聯,沒有分配新存儲空間二、填空題(本大題共20小題,每小題1分,共20分)請在每小題的空格中填上正確答案,錯填、不填均無分。21 .公共派生中,基類的公有成員在派生類中是公有成員 。22 .若要使用標準輸入流機制從鍵盤輸入一個整數賦給整型變量a,相應的C+語句是 c23 .UML中對象行為之間的動態(tài)關系是通過對象行為之間的依賴關系表現的,稱之為消息鏈接。24
7、.C+函數中按引用調用傳遞參數時使用對象別名作為參數。25 .在C+中除具有一循環(huán)_語句和switch語句的函數外,其它函數都可以說明為內聯函數。26 .C+中規(guī)定模板以.Template 關鍵字和一個形參表示開頭。27 .構造函數不能被繼承,一個派生類只能調用它的直接 基類的構造函數。28 .vector類中用于獲取存放的元素個數的方法是Size();。29 .C+中istream類的直接基類是 _Ios類。30 .要關閉一個文件輸出流對象myFile ,所用的C+語句是myFile.close();31 .執(zhí)行下列代碼double pi=3.141592cout<<setpre
8、cision(2)<<pi ;程序的輸出結果是 _3.1。32 .在私有派生中,基類的權限為private的成員,在派生類中_不可訪問 。33 .C+總共有3種文件流,分別是輸入文件流、輸出文件流和輸入輸出文件流34 .C+使用流進行輸入輸出,其中能捕獲鍵盤輸入的對象是。35 .在vector類中刪除向量中最后一個對象的方法是O36 .函數重載可使一個函數名具有多種功能,稱這種特性為 多態(tài)性。37 .C+語言對C語言做了很多改進,C+語言相對于 C語言的最根本的變化是引進了對象概念。38 .指令定義一個標識符及串,在源程序中每次遇到該標識符時,編譯器均用定義的 串代替之。39 .在
9、C+標準輸出方式中,要設置輸出數據字段寬度width所使用的操控符是40 .設有定義int x; float y;,則10+x+y值的數據類型是三、改錯題(本大題共5小題,每小題2分,共10分)下面的類定義中有一處錯誤,請用下橫線標出錯誤所在行并給出修改意見。41.#include<iostream.h>main()int x=9 , y=8 , z=7;const int * p=z ;cout<< * p<<endl ;42.#include<iostream.h>main()int x=8 , y=6 ;const int*const p=
10、 & x;P= & y;cout<<* p<<endl ;43.#include<iostream.h>main()folat p ;p=new folat5;for(int i=0 ; i<5 ; i+)cin>> * (p+i) ; cout<< * (p+i)<<endl ; delete p;44.template<class T>T f(T x)T y;y=x+T ;return y ;45.#include<iostream.h>class pointint x ;
11、public : void init(int a)x=a ; int getx()return x ; void setx(int a)x=a ; ;main()point a;a.init(20 , 30);cout<<a.getx()<<endl ;四、完成程序題(本大題共5小題,每小題4分,共20分)46 .在下面程序的下劃線處填上正確的語句,使其得到下面的輸出結果。x=2 , y=3#include<iostream.h>class Sampleint x , y;public :Sample()x=y=0 ;Sample(int a , int b
12、)x=a ;()void disp() cout<<"x="<<x<<" , y="<<y<<endl ;()void main()Sample s(2, 3), *p= &s;p - >disp();47 .在下劃線處填上適當的語句,使程序的輸出結果如下:n=30#include< iostream.h >template< class T >class SampleT n;public :Sample(兒Sample(T i)Sample<T>
13、;&operator+(const Sample<T>&);void disp( )cout<<"n="<<n<<endl; ;template<class T>Sample<T>&Sample<T> : operator+(const Sample<T> &s)static Sample<T>temp ;return temp;void main()Sample<int>s1(10) , s2(20), s3;s3=s1+
14、s2;s3.disp();48 .在下劃線處填上適當的語句,使程序的輸出結果如下:1 2 3 4 5 6 7 8 9 10#include<iostream.h>class Sampleint A1010;public :int &operator()(int , int);;int &Sample:operator()(int x , int y)return Axy;void main()Sample a;int i , j;for(j=0 ; j<10; j+)for(i=0 ; i<l0; i+)cout<<a(i , 1)<&
15、lt; ""cout<<endl;49 .在下劃線處填上適當的句子,完成函數的定義。#include<iostream.h>class Sampleint x ;public :Sample(兒;x=a ; x=a.x+10; void disp( )cout<<"x="<<x<<endl; ;void main()Sample s1(2), s2(s1);51 .disp();52 .disp();50 .輸入一個字符串,將其逆序后輸出。#include<iostream>usin
16、g namespace std;void main()char a50 ; memset(a, 0, sizeof(a);int i=0 , j;chart;cin.getline(a , 50,z nfor(i=0 , j=strlen(a)-1 ; i< i+ , j)t=ai;a j=t ;cout<<a<<endl ;五、程序分析題(本大題共4小題,每小題5分,共20分)51 .(給出下面程序的輸出結果#include<iostream.h>class exampleint a;public :example(int b)a=b+ ; void
17、 print( )a=a+1 ; cout<<a<<" " ; void print( )constcout<<a<<"";void main()example x(3);const example y(2);x.print();y.print();52 .給出下面程序的輸出結果#include<iostream.h>class Sampleint x , y;public :Sample( )x=y=0 ; Sample(int a , int b)x=a ; y=b; Sample()if(
18、x=y)cout<<"x=y"<<endl ;elsecout<<"x!=y"<<endl ;void disp() cout<<"x="<<x<<" , y="<<y<<endl ;void main()Sample sl(2, 3);s1.disp();53 .給出下面程序的輸出結果#include<iostream.h>class Sampleint n ;static int sum ;p
19、ublic :Sample(int x)n=x ; void add( )sum+=n ; void disp()cout<<"n="<<n<<" , sum : "<<sum<<endl ;;int Sample:: sum=0;void main()Sample a(2), b(3), c(5);a.add();a.disp();b.add();b.disp();c.add();c.disp();54 .給出下面程序的輸出結果#include<iostream.h>class A
20、private :friend class B ;A(int val=0) : data(val), use(1)int use, data;;class Bpublic :A*pa ;B(int val=0) : pa(new A(val) B( )if( - pa - >use=0)delete pa ; B(B & rhs) + + rhs - >use; pa=rhs.pa; B & operator=(B & rhs);A*operator - >( )return pa ; void Display() cout<<"
21、data="<<pa - >data<<",use="<<pa - >use<<endl ;B & B : operator=(B & rhs)if(this = = & rhs)return*this ;if( - pa ->use = =0)delete pa;+ + rhs - >use;pa=rhs.pa;return * this ;int main()B b1(1), b2(b1), b3(3);b1.Display();b2.Display();b3.Di
22、splay();b3=b1 ;b1.Display();b3.Display();return 0;六、程序設計題(本大題共1小題,每小題10分,共10分)55 .已知一個student類,包括學姓名,成績和等級,不含任何成員函數 處理類.class studentchar name 10 ;int deg;char level 7 ;friend class process:public :student(char na , int d)strcpy(name , na); deg=d; ;class processpublic :void trans(student s )/根據學生成績計
23、算學生等級 (優(yōu)大于大于69分,及格大于59分,不及格小于 60分).void disp(student s )./根據成績降序打印所有學生信息;要求實現process類中的兩個函數:.process為學生信息89分,良大于79分,中答案:1.A 2.A 3.D 4.C 5.A 6.D 7.A 8.C 9.A 10.B 11.B 12.A 13.C 14.A 15.B 16.B 17.B 18.C 19.A 20.D二、填空題(本大題共20小題,每小題1分,共20分)請在每小題的空格中填上正確答案,錯填、不填均無分。21 .公有成員22 .cin>>a;23 .消息鏈接24 .對象
24、別名25 .循環(huán)26 .Template27 .直接28.Size();28 .Ios 類30.myFile.close();31.3.132 .不可訪問33 .輸入輸出文件流34 .Cin35 .pop_back(const T &)36多態(tài)性37對象38.#define39.Setw(int width)40.Float三、改錯題(本大題共5小題,每小題2分,共10分)下面的類定義中有一處錯誤,請用下橫線標出錯誤所在行并給出修改意見。41 .const int * p=z;普通變量不能給指針變量賦值改為:const int * p= & z;42 .P=& y;p是指向常量的常量指針,不能做為表達式的左值。43 .folat p;float關鍵字錯誤44 .y=x+T;T是類型名,不能進行此類操作.45 .public : void init (int a) /a.init ( 20,30);函數重載,參
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025勞動派遣合同續(xù)訂協議書
- 2025租賃合同終止設備移除案例
- 機械設備安全技術復習測試題
- 2025環(huán)球金融中心獨家招商代理合同
- 2019-2025年消防設施操作員之消防設備基礎知識能力提升試卷A卷附答案
- 初中整除材料題目及答案
- 2025商品陳列合作協議合同樣本
- 傳播考試試題及答案的
- 中醫(yī)子宮腺肌病
- 廚師英語模擬考試試題及答案
- 【課件】Unit+8+Section+B+(1a~2b)課件人教版(2024)初中英語七年級下冊
- 2025年山西云時代技術有限公司校園招聘160人筆試參考題庫附帶答案詳解
- 交互裝置設計課程介紹
- 2025-2030全球及中國三維激光掃描儀行業(yè)市場現狀供需分析及投資評估規(guī)劃分析研究報告
- 安防監(jiān)控系統維保方案
- 鐵路工務安全
- 《人工智能:AIGC基礎與應用》高職全套教學課件
- 福建省漳州實小教育集團2025年數學三下期末綜合測試試題含解析
- 香菇菌棒購銷合同范例
- 2025屆上海市復旦附中高考語文三模試卷含解析
- 二級圓柱齒輪減速器設計
評論
0/150
提交評論