全國2004年10月高等教育自學考試面向對象程序設計試題歷年試卷_第1頁
全國2004年10月高等教育自學考試面向對象程序設計試題歷年試卷_第2頁
全國2004年10月高等教育自學考試面向對象程序設計試題歷年試卷_第3頁
全國2004年10月高等教育自學考試面向對象程序設計試題歷年試卷_第4頁
全國2004年10月高等教育自學考試面向對象程序設計試題歷年試卷_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 HYPERLINK 做試題,沒答案?上自考365,網校名師為你詳細解答!全國2004年10月高等教育自學考試面向對象程序設計試題課程代碼:02328一、單項選擇題本大題共10小題,每題2分,共20分在每題列出的四個備選項中只有一個是符合題目要求的,請將其代碼填寫在題后的括號內。錯選、多項選擇或未選均無分。1在面向對象的程序設計中,首先在問題域中識別出假設干個 A函數B類C文件D過程2定義類模板時要使用關鍵字AconstBnewCdeleteDtemplate3在以下成對的表達式中,運算結果類型一樣的一對是A和2B9和92C2和92D92和4f1和f2是同一類的兩個成員函數,但f1不能直接調用

2、f2,這說明Af1和f2都是靜態(tài)函數Bf1是靜態(tài)函數,f2不是靜態(tài)函數Cf1不是靜態(tài)函數,f2是靜態(tài)函數Df1和f2都不是靜態(tài)函數5調用一成員函數時,使用動態(tài)聯編的情況是A通過對象調用一虛函數B通過指針或引用調用一虛函數C通過對象調用一靜態(tài)函數D通過指針或引用調用一靜態(tài)函數6假定一個類的構造函數為“A(int aa=1, int bb=0) a=aa; b=bb;, 那么執(zhí)行“Ax (4);語句后,和的值分別為A1和0B1和4C4和0D4和17在派生類中能夠直接訪問的是基類的A公有成員和私有成員B保護成員和私有成員C不可訪問的和私有的成員D公有成員和保護成員8以下不具有訪問權限屬性的是A非類成

3、員B類成員C數據成員D函數成員9在類定義中private, protected, public 關鍵詞出現的次數為A任意屢次B至多一次Cpublic至少出現一次D至少一次10C語言鼓勵程序員在程序設計時將A數據和操作分別封裝B不同類型的數據封裝在一起C數據和操作封裝在一起D不同作用的操作封裝在一起二、填空題本大題共10小題,每題2分,共20分請在每題的空格中填上正確答案。錯填、不填均無分。11在用C進展程序設計時,最好用_代替malloc。12函數模板中緊隨template之后尖括號內的類型參數都要冠以保存字_。13在ios類中定義的用于控制輸入輸出格式的枚舉常量中,用于代表十進制、八進制和十

4、六進制的3個枚舉常量是dec、oct和_。14如果重載了運算符,那么相應的運算符函數名是_。15由static修飾的數據成員為該類的所有對象_。16為了實現多態(tài)性,派生類需重新定義基類中的_。17編譯時的多態(tài)性通過_函數實現。18在派生類中實現基類成員的初始化,需要由派生類的構造函數調用_來完成。19在C中,訪問指針所指向的對象的成員使用運算符_。20重載函數在參數類型或參數個數上不同,但_一樣。三、改錯題本大題共5小題,每題2分,共10分21下面的類Complex 定義中有一處錯誤,如更正了錯誤,程序的輸出是58i。請用下橫線標出錯誤所在行并給出修改意見。#include /1#includ

5、e /2class Complex /3 double real; /4 double imag; /5public: /6 Complex (double r=0.0, double i=0.0): real (r), imag (i) /7 void show()coutreal=0?: ) fabs(imag)i;/8 friend Complex& operator += (Complex c1, Complex c2) /9 c1.real+=c2.real; c1.imag+=c2.imag; /10 return c1; /11 /12; /13 /14void main ( )

6、 /15 Complex c (3,5); /16 c+=Complex (2,3); /17 c.show ( ); /18 /1922下面的程序有一處錯誤,請用下橫線標出錯誤所在行并給出修改意見。#include /1/2class shape /3public: /4 int area () return 0; /5;/6/7class rectangle: public shape /8public: /9 int a, b; /10 void setLength (int x, int y) a=x; b=y; /11 int area () return a*b; /12; /13

7、 /14void main () /15 rectangle r; /16 r. setLength (3,5); /17 shape*s=r; /18 cout r.area () endl; /19 cout s.area () endl; /20 /2123下面的程序有一處錯誤,請用下橫線標出錯誤所在行并提出修改意見。#include /1class CU /2 enum INT, FLOAT type; /3 union value /4 int ivalue; /5 float fvalue; /6 ;/7public: /8 CU (int x): type (INT), ival

8、ue (x) /9 CU (float y): type (FLOAT), fvalue (y) /10 Void print () /11 if (type =INT) /12 cout ivalue; /13 else /14 cout fvalue; /15 /16; /17 /18void main () /19 CU fCU (float) 5.6); /20 CU iCU (8); /21 fCU.print (); /22 cout endl; /23 iCU.print (); /24 /2524下面的類定義中有一處錯誤,請用下橫線標出錯誤所在行并說明錯誤原因。class A

9、/1 int a,b; /2public: /3 A(int aa=0, int bb) /4 a=aa; b=bb; /5 /6; /725下面的類定義中有一處錯誤,請用下橫線標出錯誤所在行并說明錯誤原因。class Location /1 int X, Y; /2 protected: /3 int SetZero (int zeroX, int xeroY); /4 private: /5 int length, height; /6 public: /7 void Location (int initX, int initY); /8 int GetX ();/9 int GetY (

10、); /10; /11四、完成程序題本大題共5小題,每題4分,共20分。根據題目要求,完成程序填空。26在下面程序橫線處填上適當字句,以使該程序執(zhí)行結果為:5432105.54.4#include template void f ( ) ; for (int i=0; in/2; i+) t=ai, ai=an-1-i, an-1-i=t;void main () int a5=1,2,3,4,5; double d6=1.1,2.2,3.3,4.4,5.5; f(a,5); f(d,6); for (int i=0; i5;i+) cout ai ; cout endl; for (i=0;

11、 i6; i+) cout di ; cout endl;27在下面的橫線處填上適當語句,以使類定義完整。class line; class boxprivate: int color; int upx, upy; int lowx, lowy;public: friend int same_color (line l, ); void set_color (int c)color = c; void define_box (int x1, int y1, int x2, int y2) upx=x1; upy=y1; lowx=x2; lowy=y2; ;class line private

12、: int color; int startx, starty; int endx, endy; public: int same_color (line 1,box b); void set_color (int c) color = c; void define_line (int x1, int y1, int x2, int y2) startx = x1; starty= y1; endx=x2; endy = y2;int same_color (line l, box b) if (l.color = b.color) return 1; return 0;28下面程序中A是抽象

13、類,為使其輸出是:This is class B printing. This is class C printing. 請在橫線處填寫適當內容,以使程序完整。#include class Apublic: ;class B: public Apublic: void printMe () cout This is class B printing. endl;class C: public B void printMe () cout This is class C printing. endl;void print ( ) a. printMe (); void main () B b;

14、C c; print (b); print (c);29在下面的橫線處填寫適當內容,以使類定義完整。class base protected: int a;public: base () a=0; base (int i) a=i; base (base&b) a=b.a;class derived: public base private: int d;public: derived () d=0; derived (int i, int j) : d=j; derived (derived&b): d=b.d;30在下面的橫線處填寫適當內容,以使類定義完整。class A int *a;

15、int n;public: A(): a(0), n(0) A(int nn) ; /用nn初始化n ; /用a指向長度為n的動態(tài)數組空間 ;五、程序分析題本大題共6小題,每題5分,共30分 答出下面各程序的輸出結果。31#include template void f(T*a, int n) int k; T t; for (int i=0; in-1; i+) k=i; for (int j=i+1; jaj) k=j; t=ai, ai=ak, ak=t; void main () double d5=12.3, 4.5, -23.4, -90.4, 0; char a5=B, F, A

16、, X,E; f(a,5); f(d,5); for (int i=0; i5; i+) cout di ai endl;32#include void main () cout setprecision(4) 123456 endl 123456.567;33#include class goods private: staic int totalWeight; int weight;public: goods (int w) weight = w; totalWeight +=w; goods (goods&gd) weight = gd.weight; totalWeight +=wei

17、ght; goods () totalWeight -=weight; static int getTotal () return totalWeight; ;int goods: totalWeight=0;void main () goods gl (50); cout goods: getTotal () endl; goods g2 (100); cout g2getTotal () endl;34#include class showNumType public: void show (int); void show (float);void showNumType: show (i

18、nt i) cout This is a integer endl;void showNumType: show (float f) cout This is a float endl;void main () int a = 0; float f=; showNumType snt; snt.show (a); snt.show (f);35#include class A public: A(int i=0) a=i; void print () cout a ,;private: int a;class B: public Apublic: B ()b1=b2=0; B (int i)b1=i; b2=0; B (int i, int j, int k): A(i),b1(j), b2(k) void print ()A: print (); cout

溫馨提示

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

評論

0/150

提交評論