第 1 頁:試題 |
第 5 頁:參考答案 |
21.B!窘馕觥緾++提供了一套輸入、輸出流類的對象,它們是cin、cout和eerr,對應C語言中的3個文件指針stdin、stdout、stderr,分別指向終端輸入、終端輸出和標準出錯輸出(也從終端輸出)。
cin與>>一起完成輸入操作,cout、eerr與<<一起完成輸出與標準錯誤輸出。
22.D。【解析】在C++中,標識符只能以字母、數字和下畫線組成,并且首字母不能為數字。所以D選項錯誤。
23.D。0【解析]double型數據一般占8個字節(jié),D選項超出了范圍。
24.A!窘馕觥縤f…else語句的格式“if(<條件>)<語句1>else<語句2>”注意語句結束要以分號結尾,對照題中選項可知A正確。
25.D。【解析】選項D中整型數組x的第一個元素是NULL,不是0,故選D。
26.B!窘馕觥<返回類型>又稱函數類型,表示一個
函數所計算(或運行)的結果值類型,這里的類型可以是預定義類型(如int)、復合類型(如double*)、用戶定義類型(如枚舉類),若返回值只做更新(或設置)等操作,則該函數返回類型為void類型,函數類型和內置數組不能作為返回類型,但類類型和容器類型可以被直接返回。
27.D!窘馕觥窟x項A錯誤不存在這樣的定義方式;選項B定義了一個M:yClass類的對象P;選項C是Java里的定義方式。
28.C。【解析】派生類從基類保護繼承classYY:pr0-teetedXX時,基類的公有成員在派生類中變?yōu)楸Wo成員,基類的保護成員在派生類中仍然是保護成員;本題中YY本身有一個保護成員y2,再加上基類XX的x2和x3,故選C。
29.A!窘馕觥窟\算符的重載是針對C++中原有運算符進行的,不能通過重載創(chuàng)造新的運算符。
30.D!窘馕觥款惸0迨且幌盗邢嚓P類的模板,類成員組成相同,成員函數的源代碼形式相同,所不同的是所針對的類型。類模板的成員函數都是模板函數,在用類模板定義對象時,由于沒有像函數實參表這樣的額外信息渠道,因此無法按函數模板的方式省略模板實參。但可以為類模板的參數設置默認值。由此可知應選D。
31.A。【解析】setprecision(int)是設置浮點數的精度,setw(intn)是設置輸入輸出寬度,setfill(charc)設置填充字符,showpoint即使小數部分為0,也輸出以及其后的無效數據0。
32.B!窘馕觥縯his指針是成員函數所屬對象的指針,是指向類對象的地址,是一個隱含的指針,隱含于每個類的非靜態(tài)成員函數中。funl是外部函數,fun3是友元函數,fun4是靜態(tài)成員函數,故選B。
33.C!窘馕觥勘绢}調用了fun函數。
34.D!窘馕觥柯。
35.B。【解析】類Undergraduate從類Student私有繼承,繼承方式缺省則默認是private。
36.A。【解析】本題使用析構函數。
37.B。【解析】抽象類是類中至少有一個純虛函數,抽象類是用來被繼承的,即是用來生成派生類,它本身不能生成實例。
38.C!窘馕觥糠浅蓡T函數一般都是友元函數,相比成員函數第一個操作數是對象本身以thiS指針的形式隱含在參數列表中,非成員函數調用必須顯式的列出參數;選項C
中沒有MyClock類型,故選C。
39.D!窘馕觥縤os_base::binary是作為二進制文件打開,ios_base::out是為輸出而打開,故選D。
40.B。【解析】本題考查了類的繼承。繼承有3種方式,public公有、private私有和protected保護,本題都涉及了。本題中類D公有繼承類B。在類B中又定義了虛函數,并且有保護類靜態(tài)類型count及私有變量x。主函數中調用類D,類D又繼承了類B,經過系統(tǒng)及調用,本題最終結
果為2_120。
編輯推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |