全國10月高等教育自學考試C程序設計試題及答案_第1頁
全國10月高等教育自學考試C程序設計試題及答案_第2頁
全國10月高等教育自學考試C程序設計試題及答案_第3頁
全國10月高等教育自學考試C程序設計試題及答案_第4頁
全國10月高等教育自學考試C程序設計試題及答案_第5頁
已閱讀5頁,還剩8頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、全國2010年10月自學考試C+程序設計試題 課程代碼:04737一、單項選擇題(本大題共20小題,每小題1分,共20分) 在每小題列出的四個備選項中只有一個是符合題目要求的,請將其代碼填寫在題后的括號內。錯選、多選或未選均無分。1.C+中注釋“”的有效范圍是( )A.從“”開始到行尾 B.從“”開始到下一個“”C.“”及其后一個字符 D.從“”開始到程序尾2.假定MyClass為一個類,則該類的復制構造函數的聲明語句為( )A.MyClass&(MyClass x); B.MyClass(MyClass x);C.MyClass(MyClass &x);D.MyClass(MyClass *

2、x);3.下列選項不是C+關鍵字的是( )A.typedef B.void C.bool D.inc4.用于標識十進制常量的前綴或后綴是( )A.無前后綴 B.后綴L或l C.前綴0 D.前綴0x5.設int x=56;int r=x;若cout &x;顯示0012FF7A,則cout 靜態成員名 D.對象指針.靜態成員名18聲明友元使用下列哪個關鍵字( )Aclass Bconst Cfriend Dvirtual19派生類繼承了基類的( )A所有成員 B部分成員 C數據成員 D成員函數20基類private成員,通過public派生,其在派生類中為( )Aprivate Bprotecte

3、d Cpublic D不可訪問二、填空題(本大題共20小題,每小題1分,共20分) 請在每小題的空格中填上正確答案。錯填、不填均無分。21執行下列代碼 double pi=3.141592; coutsetprecision(1)pi; 程序的輸出結果是_。22要使用STL庫提供的對數組進行升冪排序算法,在源程序中需要包含的頭文件是_。23C+語言中動態回收內存的關鍵字是_。24執行下列代碼 int b=100; cout”Oct:”octb; 程序的輸出結果是_。25C+語言中用于定義一個類的關鍵字是_。26為了使用C+語言標準程序庫提供的string類,在程序中必須使用的文件包含命令是_。

4、27在程序中執行int*a=new int之后,若a為空指針,則表明_。28C+函數中傳遞對象地址值是使用_作為參數。29將指向對象的指針作為函數參數,形參是對象指針,實參是對象的_。30C+函數有庫函數(標準函數)和_兩類。31C+中通過_對類的對象進行初始化。32UML中實例連接反映對象之間的靜態關系,消息連接描述對象之間的_關系。33若將一個對象說明為常對象,則通過該對象只能調用它的_成員函數,不能調用其它成員函數。34靜態成員函數是_的成員,不是對象的成員。35私有繼承時,在派生類中基類的protected權限變為_。36若使用一個表達式的含義能解釋為訪問多個基類中的成員,則這種對基類

5、成員的訪 問就是不確定的,稱這種訪問具有_。37如果在類模板的定義中有一個靜態數據成員,則在程序運行中會產生_靜態變量。38vector類中用于獲取向量可以容納最多對象的個數的方法是_。39C+用于運算符重載的關鍵字是_。40含有_的類稱為抽象類,它只能作為基類來使用。三、改錯題(本大題共5小題,每小題4分,共20分)下面的每題中有一處錯誤,請用下橫線標出錯誤所在行并給出修改意見41. #include class testl private : int x; public: testl ( ) x = 2 ; void set(int a)x =a; void get( ) cout x e

6、ndl; ;class test2 private: int x; public : test2 ( ) x = 3 ; void set( int a) x = a; void get( ) cout x endl; ; class test: public testl, public test2 private : int x; public:void set( int a) x=a; void gettest( ) cout x endl; ; void main( ) test a; a. get( ); 42. #include class test private : int x,

7、 y; public : void testl ( int a, int b) x = a ; y = b; int max( ); ; int test:max( ) if(xy) return x;else return y; void main( ) test a; a. testl ( 1,3); cout a. max ( ) endl; 43. #include void main() int x =5; const int * const p = &x; * p =88; cout * p endl; 44. #include class point private : floa

8、t x, y ; public : f( float a, float b) x = a ; y = b ; f( ) x=O;y=O; void getx( ) cout x endl; void gety ( ) cout y endl ; class pointl private : float x, y ; public : f( float a, float b) x = a; y = b ; f( )x=l;y=l; void getx( ) cout x endl; void gety( ) cout y endl; ; main( ) I point a; a.f(); a.

9、getx( ) ;a. gety ( ); 45. #include void main( ) string strl ( we are here ); cout strl endl; 四、完成程序題(本大題共5小題,每題4分,共20分)46在下面程序的下劃線處填上正確的數據類型,保證程序具有如下輸出結果: 0 17 17,17,17源程序如下:#include using namespace std;class base public : _num; base ( ) ; int base:hum = 0; void main( ) cout base:num endl; _* p=&bas

10、e : :num; *p=17; cout base:num end1; base a,b; cout * p, a. hum , b. num;47在下面橫線處填上正確的內容,完成類的定義。class Base int x; static const int b; public: Base( int, int); const int &a; ; _b =15; Base:Base(int i,int j): _ 48完成下面程序中的show函數的定義,使其運行結果如下: In base In derived 程序清單如下: #include using namespace std; clas

11、s base pubhc : virtual void print( ) cout In base endl; ; class derived: public base public : void print( ) cout In derived endl; ; void show(base * pb,void (base: * pf) ( ) ) _ void main( ) base b; derived d ; show ( &b, base:print); show ( &d, base:print); 49在下面程序的下劃線處填上正確的語句。 #include using names

12、pace std; template T f( T&a, T&b, int n) for (int i=0;i n;i + ) ai =ai +bi; return a ; void main( ) In ta5 =1,2,3,4,5; int b5 = 100,200,3,4,51 , * p; for(int i =0;i 2;i +) p=_調用函數f for( ;p a +5;p + ) cout _ endl ; 50.下列程序將x,y,z按從小到大的順序排列并將結果返回給實參,在橫線處填入正確的內容。 template void order(_) _; if(x y) a =x;x

13、 =y;y =a; if(y z) a =y;y =z;z =a; if(x y) a =x;x =y;y =a; 五、程序分析題(本大題共2小題,每小題5分,共10分)51給出下面程序的輸出結果 #include using namespace std; template T F(T x) return x 5; void main( ) int a = 15; cout F(a) n; double b = - 5.8976; cout F(b) n; cout F(5) n; 52給出下面程序的輸出結果 #include using namespace std; class A priv

14、ate: int X, Y; public : A ( int myx, int myy) X = myx; Y = myy ; void show ( ) cout X = X Y = Y endl; ; class B : public A private : int H, W; public: B ( int myx, int myy, int myh, int myw) : A ( myx, myy) H = myh ; W = myw; void show ( ) cout H = H ; W = W endl; ; void main( ) B d(1,2,3,4) ; d. show ( ) ; 六、程序設計題(本大題共1小題,共10分)53定義隊列類模板queue(先進先出),隊列的大小由使用者確定。要求該類模板對外提供如下二種基本操作:(1)insert(入隊列)(2)front(出隊列),用數組來實現 #inc

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論