南開大學21春學期(1709-2103)《程序設計基礎(下)》在線作業-答案1_第1頁
南開大學21春學期(1709-2103)《程序設計基礎(下)》在線作業-答案1_第2頁
南開大學21春學期(1709-2103)《程序設計基礎(下)》在線作業-答案1_第3頁
南開大學21春學期(1709-2103)《程序設計基礎(下)》在線作業-答案1_第4頁
南開大學21春學期(1709-2103)《程序設計基礎(下)》在線作業-答案1_第5頁
已閱讀5頁,還剩8頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

[南開大學]21春學期(1709-2103)《程序設計基礎(下)》在線作業試卷總分:100得分:100一、單選題(共20道試題,共40分)1.下列類中()是輸入/輸出流類iostream的派生類。A.fstreamB.ofstreamC.ifstreamD.ostream參考選擇:A2.下面描述中,錯誤的是()。A.在基類定義的public成員在公有繼承的派生類中可見,也能在類外被訪問B.在基類定義的public和protected成員在私有繼承的派生類中可見,在類外可以被訪問C.在基類定義的public和protected成員在保護繼承的派生類中可見D.在派生類中不可見的成員要變成可訪問的,需要進行訪問聲明參考選擇:B3.在一個鏈接隊列中,假設f和r分別是隊頭和隊尾指針,則插入一個s結點的運算時()。A.f->next=s;f=s;B.r->next=s;r=s;C.s->next=r;r=s;D.s->next=f;f=s;參考選擇:B4.運算符delete刪除一個動態對象時()。A.首先為該動態對象調用構造函數,再釋放其占用的內存B.首先釋放該動態對象占用的內存,再為其調用構造函數C.首先為該動態對象調用析構函數,再釋放其占用的內存D.首先釋放動態對象占用的內存,再為其調用析構函數參考選擇:C5.關于類和對象不正確的說法是()。A.類是一種類型,它封裝了數據和操作B.對象是類的實例C.一個類的對象只有一個D.一個對象必屬于某個類參考選擇:C6.將含100個結點的完全二叉樹從根這一層開始,每層從左至右依次對結點編號,根結點的編號為1。編號為47的結點X的雙親的編號為()。A.23B.24C.25D.無法確定參考選擇:A7.在一個鏈接隊列中,假設f和r分別是隊頭和隊尾指針,則刪除一個結點的運算時()。A.r=f->next;B.r=r->next;C.f=f->next;D.f=r->next;參考選擇:C8.在一個具有n個頂點的有向圖中,若所有頂點的入度之和為s,則所有頂點的度之和為()。A.sB.s+1C.s-1D.2s參考選擇:D9.繼承具有(),即當基類本身也是某一個類的派生類時,底層的派生類也會自動繼承間接基類的成員。A.規律性B.傳遞性C.重復性D.多樣性參考選擇:B10.在下列關鍵字中,用以說明類中公有成員的是()。A.publicB.privateC.protectedD.friend參考選擇:A11.下面對析構函數的正確描述是()。A.系統不能提供默認的析構函數B.析構函數必須由用戶定義C.析構函數沒有參數D.析構函數可以設置默認參數參考選擇:C12.在二叉樹的第i層上至多有()個結點(i≥1)。A.2的i次方減1B.2的i-1次方C.2的i次方加+1D.2的i+1次方參考選擇:B13.下列虛基類的聲明中正確的是()。A.classvirtualB:publicAB.virtualclassB:publicC.classB:publicAvirtualD.classB:virtualpublicA參考選擇:D14.C++有()種聯編方式。A.1B.2C.3D.4參考選擇:B15.下列說法中錯誤的是()。A.公有繼承時基類中的public成員在派生類中是public的B.公有繼承時基類中的private成員在派生類中是不可訪問的C.私有繼承時基類中的public成員在派生類中是private的D.私有繼承時基類中的public成員在派生類中是protected的參考選擇:D16.友元關系不能()。A.繼承B.是類與類之間是關系C.是一個類的成員函數與另一個類的關系D.提高程序的運行效率參考選擇:A17.當一個派生類公有繼承一個基類時,基類中的所有公有成員成為派生類的()。A.public成員B.private成員C.protected成員D.友元參考選擇:A18.下面關于友元的描述中,錯誤的是()。A.友元函數可以訪問該類的私有數據成員B.一個類的友元類中的成員函數都是這個類的友元函數C.友元可以提高程序的運行效率D.類與類之間的友元關系可以繼承參考選擇:D19.有關析構函數的說法不正確的是()。A.析構函數有且僅有一個B.析構函數和構造函數一樣可以有形參C.析構函數的功能是用來釋放一個對象D.析構函數無任何函數類型參考選擇:B20.撤消對象時,系統自動調用()函數。A.成員函數B.構造函數C.析構函數D.普通函數參考選擇:C二、多選題(共15道試題,共30分)21.如果類A繼承了類B,則類A稱為()。A.派生類B.繼承類C.子類D.父類參考選擇:AC22.下列函數中,不可以作為虛函數的是()。A.普通函數B.構造函數C.靜態成員函數D.析構函數參考選擇:ABC23.下面哪些數據結構屬于非線性結構A.線性表B.樹C.圖D.集合參考選擇:BCD24.在派生類中可以直接訪問基類的()。A.公有成員B.保護成員C.私有成員D.友元成員參考選擇:AB25.下面關于自定義類的運算符重載的說法中,正確的是()。A.賦值運算符和下標運算符只能重載為類的成員函數B.賦值運算符和下標運算符只能重載為類的友元函數C.賦值運算符重載時一般以引用方式返回*this,表示返回賦值運算符的左操作數D.使用重載的賦值運算符時,左操作數一定是自定義類型參考選擇:ACD26.已知Derived是Base的公有派生類,且已定義兩個對象Derivedd;和Baseb;,則下列語句中正確的是()。A.d=b;B.b=dC.Derived*d=&b;D.Base&b=d;參考選擇:BD27.下面關于自定義類的運算符重載的說法中,正確的是()。A.除了后增后減單目運算符外,其他運算符重載為類的成員函數時,函數參數個數比運算符實際操作數個數少一個B.運算符重載為類的成員函數時,函數中的this指針指向第一個運算數C.只有運算符的第一個運算數是自定義類類型時,才能將該運算符重載為類的成員函數D.所有運算符都可以以類成員函數形式進行重載參考選擇:ABC28.已知f是以二進制讀寫方式打開的文件流對象,且有int型變量a,則下列選項中能正確進行文件讀寫操作的語句包括()。A.write((char*)a,sizeof(a));B.write((char*)&a,sizeof(a));C.read((char*)a,sizeof(a));D.read((char*)&a,sizeof(a));參考選擇:BD29.系統提供的默認拷貝構造函數實現的是“淺拷貝”,下列關于淺拷貝的說法中正確的是()。A.當一個類中有指針成員變量時,淺拷貝有可能會導致一片內存被重復釋放B.當一個類中有指針成員變量時,淺拷貝有可能導致一個對象中保存的數據不正確C.如果一個類中只有int型和double型的成員變量,則淺拷貝不會出現任何問題D.如果一個類中有一個成員變量是char型數組,則使用淺拷貝會存在問題參考選擇:ABC30.不論派生類以何種方法繼承基類,都可以使用基類的()。A.public成員B.private成員C.protected成員D.所有成員參考選擇:AC31.已知Circle類定義如下所示,則下列說法正確的是()。classCircle{public:doublem_x,m_y;doublem_radius;voidsetCenter(doublex,doubley){m_x=x;m_y=y;}voidsetRadius(doubleradius){m_radius=radius;}doublegetArea(){return3.14*m_radius*m_radius;}};A.m_x、m_y和m_radius都是Circle類的成員變量B.setCenter、setRadius和getArea都是Circle類的成員函數C.類定義體后面的分號可以省略D.將doublem_radius;改為doublem_radius=1;,則表示m_radius成員變量的初值為1參考選擇:AB32.下面選項中,是類的成員函數為()。A.構造函數B.析構函數C.友元函數D.缺省參數的構造函數參考選擇:ABD33.下面描述中,正確的是()。A.多重繼承中,派生類對象被銷毀時析構函數的調用順序與派生類對象創建時構造函數的調用順序相反B.多重繼承中,派生類對象被銷毀時析構函數的調用順序與派生類對象創建時構造函數的調用順序一致C.多重繼承中創建派生類對象時各基類構造函數的調用順序與基類構造函數在初始化列表中的出現順序一致D.多重繼承中,如果派生類的初始化列表中沒有某個基類構造函數的調用語句,則表示調用該基類的無參構造函數參考選擇:AD34.下列函數中,可以作為虛函數的是()。A.普通成員函數B.構造函數C.靜態成員函數D.析構函數參考選擇:AD35.下列成員中,不能被派生類繼承的包括()。A.公有成員B.構造函數C.保護成員D.析構函數參考選擇:BD三、判斷題(共15道試題,共30分)36.類模板可以生成若干個模板類,每個模板類又可定義若干個對象。[以上敘述是否正確?]A.正確B.錯誤參考選擇:正確37.n個結點的無向圖,若它有n(n-1)/2條邊,則它一定是連通圖。[以上敘述是否正確?]A.正確B.錯誤參考選擇:正確38.一個結點的后繼的數目稱為該結點的度;樹中各結點度的最大值稱為樹的度。[以上敘述是否正確?]A.正確B.錯誤參考選擇:正確39.可以在隊列的任意位置插入元素。[以上敘述是否正確?]A.正確B.錯誤參考選擇:錯誤40.非線性結構即可以用順序存儲結構存儲、也可以用非順序存儲結構存儲。[以上敘述是否正確?]A.正確B.錯誤參考選擇:錯誤41.線性表中的一個結點可以有多個前驅和多個后繼[以上敘述是否正確?]A.正確B.錯誤參考選擇:錯誤42.強連通圖的各頂點間均可達。[以上敘述是否正確?]A.正確B.錯誤參考選擇:正確43.二叉樹就是結點度為小于等于2的樹。[以上敘述是否正確?]A.正確B.錯誤參考選擇:正確44.二叉樹就是結點度都是為2的樹。[以上敘述是否正確?]A.正確B.錯誤參考選擇:錯誤45.運算符重載實際上是對已有的運算符重新定義其功能。[以上敘述是否正確?]A.正確B.錯誤參考選擇:正確46.圖說的是數據的邏輯結構。[以上敘述是否正確?]A.正確B

溫馨提示

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

評論

0/150

提交評論