




已閱讀5頁,還剩172頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
C 面向?qū)ο蟪绦蛟O(shè)計教程 第1章C 程序設(shè)計基礎(chǔ) 一 選擇題 1 下列語句中 錯誤的是 A constintbuffer 256 B constinttemp C constdouble point D double constpt newdouble 5 5 解析 修飾符const聲明的常量只能被讀取 該常量必須在聲明時進(jìn)行初始化 并且它的值在程序中不能改變 選項B 沒有初始化 錯誤 選項C 定義了一個指向constdouble的指針 其意義為指針point指向的變量不能通過指針point來改變 D 中表示指針pt是常量指針 已在聲明時進(jìn)行了初始化 答案 B 2 關(guān)于函數(shù)重載 下列敘述中錯誤的是 A 重載函數(shù)的函數(shù)名必須相同B 重載函數(shù)必須在參數(shù)個數(shù)或類型上有所不同C 重載函數(shù)的返回值類型必須相同D 重載函數(shù)的函數(shù)體可以有所不同解析 函數(shù)重載是用同一個函數(shù)名字在不同的參數(shù)類型或參數(shù)個數(shù)上做類似的操作方作 它們的實(shí)現(xiàn)方法可以不同 所以說 重載函數(shù)的函數(shù)名必須相同 函數(shù)體可以有所不同 函數(shù)重載必須在參數(shù)類型或參數(shù)個數(shù)上不一樣 不能依靠返回值不一樣來區(qū)分重載函數(shù) 答案 C 3 有以下程序 voidFun inti intj cout i j endl 輸出i j voidFun inti cout i endl 輸出i intmain 主函數(shù)main inta 1 定義變量iFun a 調(diào)用Fun return0 返回值0 返回操作系統(tǒng) 該程序執(zhí)行后輸出的結(jié)果是 A 1B 2C 3D 4解析 由于主函數(shù)中調(diào)用的Fun 函數(shù)只有一個參數(shù) 故執(zhí)行的是voidFun inti 的版本 執(zhí)行 cout i endl 時 由于是后綴 所以先輸出i的值1 再使i加1 答案 A 二 編程題 1 編寫一個C 程序 要求輸出 歡迎學(xué)習(xí)C 語言 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間stdintmain 主函數(shù)main cout 歡迎學(xué)習(xí)C 語言 endl 用C 的方法輸出一行system PAUSE 調(diào)用庫函數(shù)system 輸出提示信息return0 返回值 返回操作系統(tǒng) 2 編一個程序 用一個函數(shù)實(shí)現(xiàn)求n個整型數(shù)據(jù)的最小值 函數(shù)原型如下 intMin inta intn 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間stdintMin inta intn 求n個整型數(shù)據(jù)的最小值 intm a 0 i 臨時變量for i 1 i n i 依次比較求最小值if a i m 如果a i 更小m a i a i 為當(dāng)前最小值 returnm 返回最小值 intmain 主函數(shù)main inta 1 2 3 4 5 6 7 8 9 10 n 10 cout 最小值為 Min a n endl 輸出最小值system PAUSE 調(diào)用庫函數(shù)system 輸出提示信息return0 返回值 返回操作系統(tǒng) 3 求2個數(shù)或3個整數(shù)中的最大數(shù) 用兩個同名函數(shù)實(shí)現(xiàn) 要求編寫測試程序 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間stdintMax intx inty 求x y的最大值 returnx y x y 返回x y的最大值 intMax intx inty intz 求x y z的最大值 intm x y x y x y的最大值m m z m z m z的最大值returnm 返回x y z的最大值 intmain 主函數(shù)main cout 2 3的最大值為 Max 2 3 endl cout 1 6 8的最大值為 Max 1 6 8 endl system PAUSE 調(diào)用庫函數(shù)system 輸出提示信息return0 返回值 返回操作系統(tǒng) 4 用變量的引用作函數(shù)形參 實(shí)現(xiàn)交換兩個整型變量 要求編寫測試程序 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間stdvoidS 返回值 返回操作系統(tǒng) 5 編一個程序 用同一個函數(shù)名對n個數(shù)據(jù)進(jìn)行從小到大排序 數(shù)據(jù)類型可以是整型 單精度實(shí)型 雙精度實(shí)型 用重載函數(shù)實(shí)現(xiàn) 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間stdvoidSort inta intn 對a 0 a n 1 進(jìn)行排序 inttem i j 定義變量for i 0 ia j a i 比a j 更大tem a i a i a j a j tem 5 編一個程序 用同一個函數(shù)名對n個數(shù)據(jù)進(jìn)行從小到大排序 數(shù)據(jù)類型可以是整型 單精度實(shí)型 雙精度實(shí)型 用重載函數(shù)實(shí)現(xiàn) 參考程序 voidSort floata intn 對a 0 a n 1 進(jìn)行排序 floattem 臨時變量inti j 定義變量for i 0 ia j a i 比a j 更大tem a i a i a j a j tem 5 編一個程序 用同一個函數(shù)名對n個數(shù)據(jù)進(jìn)行從小到大排序 數(shù)據(jù)類型可以是整型 單精度實(shí)型 雙精度實(shí)型 用重載函數(shù)實(shí)現(xiàn) 參考程序 voidSort doublea intn 對a 0 a n 1 進(jìn)行排序 doubletem 臨時變量inti j 定義變量for i 0 ia j a i 比a j 更大tem a i a i a j a j tem 5 編一個程序 用同一個函數(shù)名對n個數(shù)據(jù)進(jìn)行從小到大排序 數(shù)據(jù)類型可以是整型 單精度實(shí)型 雙精度實(shí)型 用重載函數(shù)實(shí)現(xiàn) 參考程序 intmain 主函數(shù)main inta 1 3 2 5 6 9 0 6 定義afloatb 1 6 3 3 2 8 5 6 6 8 9 6 0 6 6 8 定義bdoublec 1 2 3 1 2 6 5 8 6 8 9 8 0 8 6 2 定義cinti n 8 定義變量Sort a n 對a排序cout a 輸出提示for i 0 i n i cout a i 輸出a i cout endl 換行 5 編一個程序 用同一個函數(shù)名對n個數(shù)據(jù)進(jìn)行從小到大排序 數(shù)據(jù)類型可以是整型 單精度實(shí)型 雙精度實(shí)型 用重載函數(shù)實(shí)現(xiàn) 參考程序 Sort b n 對b排序cout b 輸出提示for i 0 i n i cout b i 輸出b i cout endl 換行Sort c n 對c排序cout c 輸出提示for i 0 i n i cout c i 輸出c i cout endl 換行system PAUSE 調(diào)用庫函數(shù)system 輸出系統(tǒng)提示信息return0 返回值 返回操作系統(tǒng) C 面向?qū)ο蟪绦蛟O(shè)計教程 第2章類和對象習(xí)題解答 一 選擇題 1 下列選項中 不屬于面向?qū)ο蟪绦蛟O(shè)計特征的是 A 繼承性B 多態(tài)性C 類比性D 封裝性解析 封裝性 繼承性和多態(tài)性是面向?qū)ο笏枷氲?個主要特征 封裝性指將數(shù)據(jù)和算法捆綁成一個整體 這個整體就是對象 描述對象的數(shù)據(jù)被封裝在其內(nèi)部 繼承性是指一種事物保留了另一種事物的全部特征 并且具有自身的獨(dú)有特征 多態(tài)性主要指當(dāng)多個事物繼承自一種事物時 同一操作在它們之間表現(xiàn)出不同的行為 答案 C 2 在面向?qū)ο蠓椒ㄖ?實(shí)現(xiàn)信息隱蔽是依靠 A 對象的繼承B 對象的多態(tài)C 對象的封裝D 對象的分類解析 在面向?qū)ο蠓椒ㄖ?封裝性是指將數(shù)據(jù)和算法捆綁成一個整體 這個整體就是對象 描述對象的數(shù)據(jù)被封裝在內(nèi)部 只可以通過對象提供的算法來進(jìn)行操作 從而實(shí)現(xiàn)信息隱蔽 答案 C 3 下列關(guān)于類和對象的敘述中 錯誤的是 A 一個類只能有一個對象B 對象是類的具體實(shí)例C 類是某一類對象的抽象D 類和對象的關(guān)系就像數(shù)據(jù)類型和變量的關(guān)系解析 在面向?qū)ο笤O(shè)計中 類是同一種對象的抽象 而不只是對一個對象的抽象 一個類具有多個對象 對象是類的具體實(shí)例 就像數(shù)據(jù)類型和變量的關(guān)系 一種數(shù)據(jù)類型可以定義多個變量 一個變量卻只能是一種數(shù)據(jù)類型 答案 A 4 有以下類聲明 classMyClass intnum 則MyClass類的成員num是 A 公有數(shù)據(jù)成員B 公有成員函數(shù)C 私有數(shù)據(jù)成員D 私有成員函數(shù)解析 函數(shù)聲明時 函數(shù)名后必須帶 所以num是數(shù)據(jù)成員 在類中 當(dāng)沒有用訪問權(quán)限標(biāo)識符標(biāo)識時 默認(rèn)為私有權(quán)限 答案 C 5 在下列函數(shù)原型中 可以作為類AA構(gòu)造函數(shù)的是 A voidAA int B intAA C AA int constD AA int 解析 構(gòu)造函數(shù)用于初始綸對象的數(shù)據(jù)成員 沒有返回類型 而且由于常成員函數(shù)不能更新對象的數(shù)據(jù)成員 所以常成員函數(shù)也不可能作為構(gòu)造函數(shù) 答案 D 6 下列關(guān)于this指針的敘述中 正確的是 A 任何與類相關(guān)的函數(shù)都有this指針B 類的成員函數(shù)都有this指針C 類的友元函數(shù)都有this指針D 類的非靜態(tài)成員函數(shù)才有this指針解析 this指針只能在類的成員函數(shù)中使用 它指向該成員函數(shù)被調(diào)用的對象 但是有兩種與類相關(guān)的函數(shù)都沒有this指針 即靜態(tài)成員函數(shù)和友元函數(shù) 答案 D 7 有以下程序 classTest private staticintn 靜態(tài)成員public Test n 2 構(gòu)造函數(shù) Test n 3 析構(gòu)函數(shù)staticintGetNum returnn 返回n intTest n 1 初始化nintmain 主函數(shù)main Test p newTest 定義指針pdeletep 釋放p指向的動太對象cout n Test GetNum endl 輸出nreturn0 返回值0 返回操作系統(tǒng) 執(zhí)行后的輸出結(jié)果是 A n 0B n 1C n 2D n 3解析 靜態(tài)數(shù)據(jù)成員初始化的值為1 執(zhí)行 Test p newTest 將調(diào)用構(gòu)造函數(shù) 執(zhí)行 n 2 n的值變?yōu)? 執(zhí)行 deletep 時將調(diào)用析構(gòu)函數(shù) 執(zhí)行 n 3 n的值減3 變?yōu)? 答案 A 8 有以下程序 classMyClass private intn 數(shù)據(jù)成員public MyClass intk n k 構(gòu)造函數(shù)intGet returnn 返回nintGet const returnn 1 返回n 1 intmain 主函數(shù)main MyClassa 5 定義對象aconstMyClassb 6 定義對象bcout a Get b Get endl 輸出信息return0 返回值0 返回操作系統(tǒng) 運(yùn)行后的輸出結(jié)果是 A 55B 57C 75D 77解析 const是一個判斷重載的標(biāo)志 a Get調(diào)用 intGet returnn 故得到5 而常對象b執(zhí)行 b Get 時 調(diào)用常成員函數(shù) intGet const returnn 1 故得到6 1 7 答案 B 9 由于常對象不能被更新 因此 A 通過常對象只能調(diào)用它的常成員函數(shù)B 通過常對象只能調(diào)用靜態(tài)成員函數(shù)C 常對象的成員都是常成員D 通過常對象可以調(diào)用任何不改變對象值的成員函數(shù)解析 通過常對象只能調(diào)用類中的常成員函數(shù) 而不能調(diào)用類中的其他成員函數(shù) 答案 A 10 下列情況中 不會調(diào)用復(fù)制構(gòu)造函數(shù)的是 A 用一個對象去初始化同一類的另一個新對象時B 將類的一個對象賦予該類的另一個對象時C 函數(shù)的形參是類的對象 調(diào)用函數(shù)進(jìn)行形參和實(shí)參結(jié)合時D 函數(shù)的返回值是類的對象的引用 函數(shù)執(zhí)行返回調(diào)用時解析 只要在程序的執(zhí)行中 需要用一個對象來初始化另一個對象 都要調(diào)用復(fù)制構(gòu)造函數(shù) 包括A B C三種情況 答案 D 11 以下關(guān)鍵字不能用來聲明類的訪問權(quán)限的是 A publicB staticC protectedD private解析 類的訪問權(quán)限有三種 公有 私有 保護(hù) 關(guān)鍵字分別是public private protected static用于靜態(tài)成員的聲明 答案 B 12 有以下程序 classMyClass public MyClass cout A 無參構(gòu)造函數(shù)MyClass charc cout c 帶參構(gòu)造函數(shù) MyClass cout B 析構(gòu)函數(shù) intmain 主函數(shù)main MyClassa p 定義變量p newMyClass X 分配動態(tài)空間deletep 釋放動態(tài)空間cout endl 換行return0 返回值0 返回操作系統(tǒng) 執(zhí)行這個程序 屏幕上將顯示輸出 A ABXB ABXBC ABXBD AXBB解析 定義對象a時 調(diào)用一次構(gòu)造函數(shù) MyClass cout A 但定義對象指針p時不調(diào)用構(gòu)造函數(shù) 使用new動態(tài)創(chuàng)建對象時 根據(jù)參數(shù)情況調(diào)用 MyClass charc cout c 輸出X 執(zhí)行 deletep 時 需要調(diào)用一次析構(gòu)函數(shù) 輸出B 最后主函數(shù)結(jié)束時 對象a調(diào)用一次析構(gòu)函數(shù) 輸出B 答案 D 13 有以下程序 classTest public staticinta 靜態(tài)成員voidInit a 1 初始化函數(shù)Test inta 6 Init a 構(gòu)造函數(shù) intTest a 0 初始化aTestobj 定義全局對象intmain 主函數(shù)main cout obj a endl 輸出areturn0 返回值0 返回操作系統(tǒng) 運(yùn)行時輸出的結(jié)果是 A 0B 1C 2D 3解析 首先初始化靜態(tài)數(shù)據(jù)成員a為0 然后在定義全局對象obj時調(diào)用構(gòu)造函數(shù) 這時有兩個a 一個是 Test inta 6 Init a 函數(shù)中的局部變量a 另一個是靜態(tài)數(shù)據(jù)成員a 需要靠作用域來區(qū)分 在執(zhí)行Init 時 由于離開了構(gòu)造函數(shù) Test inta 6 Init a 的作用域 Init 里的a為靜態(tài)數(shù)據(jù)成員 這時靜態(tài)數(shù)據(jù)成員a賦值為1 之后回到構(gòu)造函數(shù)執(zhí)行a 這個a為 Test inta 6 Init a 中的a 值變?yōu)? 但當(dāng)構(gòu)造函數(shù)執(zhí)行完畢后 該局部變量a隨之消失 與對象無關(guān) obj a調(diào)用的是靜態(tài)數(shù)據(jù)成員 結(jié)果為1 答案 B 14 有以下程序 classTest private longx 私有數(shù)據(jù)成員public Test longa x a 構(gòu)造函數(shù)friendlongFun Tests 友元 longFun Tests if s x 1 return1 遞歸結(jié)束elsereturns x Fun Test s x 1 遞歸調(diào)用 intmain 主函數(shù)main intsum 0 定義變量for inti 0 i 6 i sum Fun Test i 累加求和cout sum endl 輸出sumreturn0 返回值0 返回操作系統(tǒng) 運(yùn)行后的輸出結(jié)果是 A 120B 16C 154D 34解析 友元函數(shù)Fun 參數(shù)表中的對象在初始化時需執(zhí)行構(gòu)造函數(shù) Test Test longa 調(diào)用過程為 先調(diào)用構(gòu)造函數(shù)Test i 使Test中x的值為i 再通過友元函數(shù)直接訪問Test x 執(zhí)行Fun 中的語句 可得到 Fun Test 0 1 Fun Test 1 1 Fun Test 2 2 1 Fun Test3 3 2 1 6 Fun Test 4 4 3 2 1 24 Fun Test 5 5 4 3 2 1 120 sum 1 1 2 6 24 120 154 答案 C 15 有以下程序 classTest private inta 數(shù)據(jù)成員public Test cout 無參構(gòu)造函數(shù) endl 無參構(gòu)造函數(shù)Test inta cout a endl 帶參構(gòu)造函數(shù)Test constTest 返回值0 返回操作系統(tǒng) 運(yùn)行時的輸出結(jié)果是 A 3B 無參構(gòu)造函數(shù)C 復(fù)制構(gòu)造函數(shù)D 3析構(gòu)函數(shù)析構(gòu)函數(shù)析構(gòu)函數(shù)解析 創(chuàng)建對象a時帶有參數(shù)3 故調(diào)用構(gòu)造函數(shù)Test inta 輸出3并換行 程序結(jié)束時調(diào)用析構(gòu)函數(shù) Test 輸出 析構(gòu)函數(shù) 并換行 答案 D 16 有以下程序 classMyClass private intn 數(shù)據(jù)成員public MyClass intm n m 構(gòu)造函數(shù)voidPrint const cout const n n 常成員函數(shù)voidPrint cout n n 非常成員函數(shù) intmain 主函數(shù)main constMyClassobj1 10 常對象MyClassobj2 20 非常對象obj1 Print 輸出信息obj2 Print 輸出信息cout endl 換行return0 返回值0 返回操作系統(tǒng) 程序的輸出結(jié)果是 A n 10const n 20B const n 10const n 20C const n 10n 20D n 10n 20解析 根據(jù)const修飾符選擇對應(yīng)的構(gòu)造函數(shù) objl為常對象 調(diào)用常成員函數(shù) 輸出 const n 10 obj2為一般對象 調(diào)用優(yōu)先調(diào)用非常成員函數(shù) 輸出 n 20 答案 C 二 填空題 1 在面向?qū)ο蠓椒ㄖ?描述的是具有相同屬性與操作的一組對象 解析 在面向?qū)ο笤O(shè)計中 一個對象是由一些屬性和操作構(gòu)成的 對象的屬性描述了對象的內(nèi)部細(xì)節(jié) 類是具有相同屬性和操作的一組對象的集合 它為屬于該類的所有對象提供統(tǒng)一的抽象描述 答案 類 2 非成員函數(shù)應(yīng)聲明為類的函數(shù)才能訪問這個類的private成員 解析 類具有數(shù)據(jù)封裝和隱藏的特性 通常只有類的成員函數(shù)才能訪問類的私有成員 外部函數(shù)只能訪問類的公有成員 但在某些情況下 需要在類的外部訪問類的私有成員 這時必須依靠引入友元來實(shí)現(xiàn) 答案 友元 3 下列程序的輸出結(jié)果為 01試將程序補(bǔ)充完整 classPoint private intx y 坐標(biāo)staticintcount 靜態(tài)數(shù)據(jù)成員public Point intm 0 intn 0 x m y n count 構(gòu)造函數(shù) Point count 析構(gòu)函數(shù)intGetX const returnx 返回xintGetY const returny 返回ystaticvoidShowCount cout count endl 輸出count 靜態(tài)數(shù)據(jù)成員的初始化intmain 主函數(shù)main Point ShowCount 輸出countPointa 6 8 定義對象Point ShowCount 輸出countsystem PAUSE 調(diào)用庫函數(shù)system 輸出提示信息return0 返回值0 返回操作系統(tǒng) 解析 由第一次調(diào)用GetCount 函數(shù)輸出count的值為0可知 應(yīng)將其初始化為0 再根據(jù)靜態(tài)數(shù)據(jù)成員的初始化格式 類型類名 靜態(tài)成員名字 值 可得橫線處填寫的語句 答案 intPoint count 0 4 有以下類聲明 classMyClass inti private intj protected intk public intm n 其中私有成員的數(shù)量是 解析 在用class聲明類的成員聲明中 如果沒有標(biāo)識成員的訪問權(quán)限 則默認(rèn)為私有的訪問權(quán)限 故i為私有訪問權(quán)限 答案 2 5 有以下程序 classInteger private intn 數(shù)據(jù)成員public Integer intn 0 n 構(gòu)造函數(shù)voidShow const coutn或Integer n 6 有以下程序 classA public A cout A 構(gòu)造函數(shù) A cout A 析構(gòu)函數(shù) intmain 主函數(shù)main A p newA 定義指針deletep 釋放動態(tài)空間cout endl 換行system PAUSE 調(diào)用庫函數(shù)system 輸出系統(tǒng)提示return0 返回值0 返回操作系統(tǒng) 程序的輸出結(jié)果是 解析 創(chuàng)建動態(tài)對象時需調(diào)用A的構(gòu)造函數(shù) 輸出 A 釋放動態(tài)對象時 調(diào)用A的析構(gòu)函數(shù) 輸出 A 答案 A A 三 編程題 1 定義一個滿足如下要求的Date類 1 用下面的格式輸出日期 年 月 日 2 設(shè)置日期 并編出應(yīng)用程序 定義日期對象 設(shè)置日期 輸出該對象提供的日期 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間stdclassDate private 數(shù)據(jù)成員intyear 年intmonth 月intday 日 1 定義一個滿足如下要求的Date類 1 用下面的格式輸出日期 年 月 日 2 設(shè)置日期 并編出應(yīng)用程序 定義日期對象 設(shè)置日期 輸出該對象提供的日期 參考程序 public 公有函數(shù)Date inty 2010 intm 1 intd 1 year y month m day d 構(gòu)造函數(shù)voidSet inty intm intd 設(shè)置日期 year y month m day d voidShow const 顯示日期 cout year month day endl intmain 主函數(shù)main Dated 定義對象d Show 顯示日期d Set 2016 6 18 設(shè)置日期d Show 顯示日期system PAUSE 調(diào)用庫函數(shù)system 輸出提示信息return0 返回值 返回操作系統(tǒng) 2 定義一個時間類Time 能提供和設(shè)置由時 分 秒組成的時間 并編出應(yīng)用程序 定義時間對象 設(shè)置時間 輸出該對象提供的時間 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間stdclassTime private 數(shù)據(jù)成員inthour 時intminute 分intsecond 秒public 公有函數(shù)Time inth 0 intm 0 ints 0 構(gòu)造函數(shù)hour h minute m second s voidSet inth intm ints 設(shè)置日期 hour h minute m second s voidShow const 顯示日期 cout hour minute second endl intmain 主函數(shù)main Timet 定義對象t Show 顯示時間t Set 8 6 18 設(shè)置時間t Show 顯示時間system PAUSE 調(diào)用庫函數(shù)system 輸出提示信息return0 返回值 返回操作系統(tǒng) 3 編寫設(shè)計一個People 人 類 該類的數(shù)據(jù)成員有姓名 name 年齡 age 身高 height 體重 weight 和人數(shù) num 其中人數(shù)為靜態(tài)數(shù)據(jù)成員 成員函數(shù)有構(gòu)造函數(shù) People 進(jìn)食 Eatting 運(yùn)動 Sporting 顯示 Show 和顯示人數(shù) ShowNum 其中構(gòu)造函數(shù)由已知參數(shù)姓名 nm 年齡 a 身高 h 和體重 w 構(gòu)造對象 進(jìn)食函數(shù)使體重加1 運(yùn)動函數(shù)使身高加1 顯示函數(shù)用于顯示人的姓名 年齡 身高 體重 顯示人數(shù)函數(shù)為靜態(tài)成員函數(shù) 用于顯示人數(shù) 假設(shè)年齡的單位為歲 身高的單位為厘米 體重的單位為市斤 要求所有數(shù)據(jù)成員為private訪問權(quán)限 所有成員函數(shù)為public訪問權(quán)限 在主函數(shù)中定義若干個對象 通過對象直接訪問類的所有非靜態(tài)成員函數(shù) 通過類訪問靜態(tài)成員函數(shù) 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間stdclassPeople private 數(shù)據(jù)成員charname 9 姓名intage 年齡intheight 身高doubleweight 體重staticintnum 人數(shù) public 公有函數(shù)People charnm 無名氏 inta 16 inth 168 intw 118 age a height h weight w strcpy name nm num voidEatting weight 進(jìn)食voidSporting height 運(yùn)動voidShow const 顯示信息 cout 個人信息 endl cout 姓名 name endl cout 年齡 age 歲 endl cout 身高 height 厘米 endl cout 體重 weight 市斤 endl endl staticvoidShowNum 顯示人數(shù) cout 人數(shù) num endl intPeople num 0 初始化靜態(tài)數(shù)據(jù)成員num intmain 主函數(shù)main Peoplep1 定義對象p1 Show 顯示信息Peoplep2 李敏 18 170 108 定義對象p2 Eatting 進(jìn)食p2 Sporting 運(yùn)動p2 Show 顯示信息People ShowNum 顯示人數(shù)system PAUSE 調(diào)用庫函數(shù)system 輸出提示信息return0 返回值 返回操作系統(tǒng) 4 定義一個描述員工 Employee 基本情況的類 數(shù)據(jù)成員包括編號 num 姓名 name 性別 sex 工資 wage 人數(shù) count 總工資 totalWage 其中姓名定義為長度為18的字符數(shù)組 性別為為長度為3的字符數(shù)組 其它數(shù)據(jù)成員類型為整型 總工資和人數(shù)為靜態(tài)數(shù)據(jù)成員 函數(shù)成員包括構(gòu)造函數(shù) 顯示基本數(shù)據(jù)函數(shù) ShowBase 和顯示靜態(tài)數(shù)據(jù)函數(shù) ShowStatic 其中構(gòu)造函數(shù)由已知參數(shù)編號 nu 姓名 nm 性別 sx 和工資 wg 構(gòu)造對象 顯示基本數(shù)據(jù)函數(shù)用于顯示學(xué)生的編號 姓名 性別和工資 顯示靜態(tài)數(shù)據(jù)函數(shù)為靜態(tài)成員函數(shù) 用于顯示人數(shù)和總工資 要求所有數(shù)據(jù)成員為protected訪問權(quán)限 所有成員函數(shù)為public訪問權(quán)限 在主函數(shù)中定義若干個員工對象 分別顯示員工基本信息 以及顯示員工人數(shù)和總工資 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間stdclassEmployee protected 數(shù)據(jù)成員intnum 編號charname 18 姓名charsex 3 姓名intwage 工資staticintcount 人數(shù)staticinttotalWage 總工資 public 公有函數(shù)Employee intnu charnm charsx intwg num nu wage wg strcpy name nm strcpy sex sx count totalWage wg voidShowBase 顯示基本數(shù)據(jù) cout 個人基本信息 endl cout 學(xué)號 num endl cout 姓名 name endl cout 性別 sex endl cout 工資 wage 元 endl endl staticvoidShowStatic 顯示靜態(tài)數(shù)據(jù) cout 人數(shù) count endl cout 總工資 totalWage 元 endl intEmployee count 0 初始化靜態(tài)數(shù)據(jù)成員countintEmployee totalWage 0 初始化靜態(tài)數(shù)據(jù)成員totalWage intmain 主函數(shù)main Employeee1 1008 李杰 男 2680 定義對象e1 ShowBase 顯示基本數(shù)據(jù)Employeee2 1009 李敏 女 2860 定義對象e2 ShowBase 顯示基本數(shù)據(jù)e2 ShowStatic 顯示靜態(tài)數(shù)據(jù)system PAUSE 調(diào)用庫函數(shù)system 輸出系統(tǒng)提示信息return0 返回值 返回操作系統(tǒng) C 面向?qū)ο蟪绦蛟O(shè)計教程 第3章模板習(xí)題解答 一 選擇題 1 下列關(guān)于模板的敘述中 錯誤的是 A 模板聲明中的第一個符號總是關(guān)鍵字templateB 在模板聲明中用 和 括起來的部分是模板的類型形參表C 類模板不能有數(shù)據(jù)成員D 在一定條件下函數(shù)模板的類型實(shí)參可以省略解析 由模板聲明的格式可知選項A B正確 在調(diào)用模板函數(shù)時 如果編譯系統(tǒng)從模板函數(shù)的類型實(shí)參表中得到的信息已經(jīng)能夠判斷部分或全部虛擬類型參數(shù)所對應(yīng)的實(shí)際類型 而且它們又正好是模板形參中最后的若干個參數(shù) 則在模板類型實(shí)參表中可以省略這幾個參數(shù) 選項D正確 類模板中可以有數(shù)據(jù)成員 數(shù)據(jù)成員的類型可以是虛擬類型 也可以是具體類型 選項C錯誤 答案 C 2 有以下函數(shù)模板定義 templateElemTypeFun constElemType解析 當(dāng)從模板函數(shù)類型實(shí)參表獲得的信息有矛盾時 模板類型實(shí)參不能省略 例如選項C中 編譯系統(tǒng)從第一個參數(shù)3獲得的信息是ElemType對應(yīng)于int 而從第二個參數(shù)5 5處獲得的信息是ElemType對應(yīng)于double 兩者相互矛盾 因此 編譯時將產(chǎn)生錯誤 解決的方法之一是顯式給出虛擬類型參數(shù)ElemType對應(yīng)的模板類型實(shí)參 強(qiáng)制ElemType對應(yīng)于int 答案 C 3 關(guān)于關(guān)鍵字class和typename 下列表述中正確的是 A 程序中typename都可以替換為classB 程序中的class都可以替換為typenameC 在模板類型形參表中只能用typename來聲明參數(shù)的類型D 在模板類型形參表中只能用class或typename來聲明參數(shù)的類型解析 程序中的typename都可以替換為class 但程序中的class不可以全部替換為typename 例如 在 模板類型形參表 中 關(guān)鍵字typename和class是可以互換的 但是在 類模板名 前的關(guān)鍵字class代表的含義是類 不可以用typename代替 選項B錯誤 在模板類型形參表中除了typename和class以外也可以用常規(guī)類型來聲明參數(shù)的類型 選項C D錯誤 答案 A 4 有以下函數(shù)模板 templateElemTypeSquare constElemType 其中ElemType是 A 函數(shù)形參B 函數(shù)實(shí)參C 模板類型形參D 模板類型實(shí)參解析 由函數(shù)模板的定義可知ElemType為模板類型形參 答案 C 5 C 中的模板包括 A 對象模板和函數(shù)模板B 對象模板和類模板C 函數(shù)模板和類模板D 變量模板和對象模板解析 C 語言通過模板提供了一種將類型參數(shù)化的機(jī)制 其中包括函數(shù)模板和類模板 答案 C 二 填空題 1 已知一個函數(shù)模板的聲明如下 templateT1Fun T2n returnn 5 0 若要求以int型數(shù)7為函數(shù)實(shí)參調(diào)用該模板函數(shù) 并返回一個double型數(shù) 則該調(diào)用應(yīng)表示為 解析 當(dāng)虛擬類型類型參數(shù)作為函數(shù)的返回值類型 而函數(shù)的返回值類型與函數(shù)參數(shù)的類型可以不同時 不管函數(shù)類型實(shí)參的類型是什么 均不能省略模板類型實(shí)參 此題的模板類型實(shí)參應(yīng)為 答案 Fun 7 2 已知intdbl intn returnn n 和longdbl longn returnn n 是一個函數(shù)模板的兩個實(shí)例 則該函數(shù)模板的聲明是template解析 將類型int和long參數(shù)化 用模板類型參數(shù)ElemType代替 可得該函數(shù)模板 答案 ElemTypeDbl ElemTypen returnn n 3 下面程序的運(yùn)行結(jié)果是 templateElemTypeMin constElemType 返回值0 返回操作系統(tǒng) 解析 模板函數(shù)Min 根據(jù)調(diào)用它的實(shí)參類型的不同 生成不同的函數(shù)版本 例如 返回兩個int型數(shù)的最小值或返回兩個double型數(shù)的最小值 答案 最小整數(shù) 4 最小實(shí)型 0 35 三 編程題 1 試使用函數(shù)模板實(shí)現(xiàn)輸出一個數(shù)組各元素的值 要求編寫測試程序 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間stdtemplatevoidDisplay ElemTypea intn 輸出數(shù)組a各元素之值 for inti 0 i n i cout a i 輸出a i cout endl 換行 intmain 主函數(shù)main inta 1 2 3 4 5 6 7 8 9 定義數(shù)組Display a 9 輸出asystem PAUSE 調(diào)用庫函數(shù)system 輸出系統(tǒng)信息return0 返回值 返回操作系統(tǒng) 2 編寫一個復(fù)數(shù)類模板Complex 其數(shù)據(jù)成員real和image的類型未知 定義相應(yīng)的成員函數(shù) 包括構(gòu)造函數(shù) 輸出復(fù)數(shù)值的函數(shù) 求復(fù)數(shù)和的函數(shù)和求復(fù)數(shù)差的函數(shù) 主函數(shù)中定義模板類對象 分別以int和double實(shí)例化類型參數(shù) 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間std 聲明復(fù)數(shù)類模板templateclassComplex private 數(shù)據(jù)成員ElemTypereal 實(shí)部ElemTypeimage 虛部public 公有函數(shù)Complex ElemTyper 0 ElemTypei 0 real r image i voidShow const 輸出復(fù)數(shù)staticComplexAdd constComplex templatevoidComplex Show const 輸出復(fù)數(shù) if imageComplexComplex Add constComplex 返回復(fù)數(shù) intmain 主函數(shù)main Complexz1 2 3 z2 6 5 z3 定義復(fù)數(shù)對象z1 Show 輸出z1z2 Show 輸出z2z3 Complex Add z1 z2 z3 z1 z2z3 Show 輸出z3z3 Complex Sub z1 z2 z3 z1 z2z3 Show 輸出z3Complexz4 2 1 3 8 z5 6 8 5 1 z6 定義復(fù)數(shù)對象z4 Show 輸出z4z5 Show 輸出z5z6 Complex Add z4 z5 z6 z4 z5z6 Show 輸出z3z6 Complex Sub z4 z5 z6 z4 z5z6 Show 輸出z6system PAUSE 調(diào)用庫函數(shù)system 輸出系統(tǒng)提示信息return0 返回值 返回操作系統(tǒng) 3 編寫一個使用數(shù)組類模板Array對數(shù)組求最大值和求元素和的程序 要求編寫出測試程序 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間std 聲明數(shù)組類模板templateclassArray private 數(shù)據(jù)成員ElemType elem 存儲數(shù)據(jù)元素值intsize 數(shù)組元素個數(shù)public 公有函數(shù)Array intsz size sz elem newElemType size 構(gòu)造函數(shù) Array deleteelem 析構(gòu)函數(shù)voidSetElem ElemTypee inti 設(shè)置元素值ElemTypeGetElem inti const 求元素值ElemTypeMax const 求最大值ElemTypeSum const 求元素之和 templatevoidArray SetElem ElemTypee inti 設(shè)置元素值 if i size coutElemTypeArray GetElem inti const 求元素值 if i size cout 元素位置錯 endl exit 2 退出程序的運(yùn)行 返回到操作系統(tǒng) returnelem i 返回元素值elem i templateElemTypeArray Max const 求最大值 ElemTypem elem 0 設(shè)elem 0 最大for inti 1 im m elem i 依次比較求最大值returnm 返回最大值 templateElemTypeArray Sum const 求元素之和 ElemTypes 0 定義變量for inti 1 i size i s s elem i 依次求和returns 返回和 intmain 主函數(shù)main inta 1 9 7 5 6 3 定義數(shù)組aintn 6 數(shù)組元素個數(shù)Arrayobj n 定義數(shù)組對象inti 定義變量for i 0 i n i obj SetElem a i i 設(shè)置數(shù)組元素值for i 0 i n i cout obj GetElem i 輸出元素值cout endl 換行cout 最大值為 obj Max endl 輸出最大值cout 各元素和為 obj Sum endl 輸出各元素之和system PAUSE 調(diào)用庫函數(shù)system 輸出系統(tǒng)提示信息return0 返回值 返回操作系統(tǒng) 4 對數(shù)組求最大值和求元素和的算法都編寫為函數(shù)模板 要求編寫出測試程序 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間stdtemplateElemTypeMax ElemTypea intn 求最大值 ElemTypem a 0 設(shè)a 0 最大for inti 1 im m a i 依次比較求最大值returnm 返回最大值 templateElemTypeSum ElemTypea intn 求元素之和 ElemTypes 0 定義變量for inti 1 i n i s s a i 依次求和returns 返回和 4 對數(shù)組求最大值和求元素和的算法都編寫為函數(shù)模板 要求編寫出測試程序 參考程序 intmain 主函數(shù)main inta 1 9 7 5 6 3 定義數(shù)組aintn 6 數(shù)組元素個數(shù)for inti 0 i n i cout a i 輸出元素值cout endl 換行cout 最大值為 Max a n endl 輸出最大值cout 各元素和為 Sum a n endl 輸出各元素之和system PAUSE 調(diào)用庫函數(shù)system 輸出系統(tǒng)提示信息return0 返回值 返回操作系統(tǒng) 5 對數(shù)組求最大值和求元素和的函數(shù)采用靜態(tài)成員函數(shù)的方式封裝成數(shù)組算法類模板ArrayAlg 要求編寫出測試程序 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間std 聲明數(shù)組類模板templateclassArrayAlg public 公有函數(shù)staticElemTypeMax ElemTypea intn 求最大值 ElemTypem a 0 設(shè)a 0 最大for inti 1 im m a i 依次比較求最大值returnm 返回最大值 staticElemTypeSum ElemTypea intn 求元素之和 ElemTypes 0 定義變量for inti 1 i n i s s a i 依次求和returns 返回和 5 對數(shù)組求最大值和求元素和的函數(shù)采用靜態(tài)成員函數(shù)的方式封裝成數(shù)組算法類模板ArrayAlg 要求編寫出測試程序 參考程序 intmain 主函數(shù)main inta 1 9 7 5 6 3 定義數(shù)組aintn 6 數(shù)組元素個數(shù)for inti 0 i Max a n Sum a n endl system PAUSE 調(diào)用庫函數(shù)system 輸出系統(tǒng)提示信息return0 返回值 返回操作系統(tǒng) C 面向?qū)ο蟪绦蛟O(shè)計教程 第4章運(yùn)算符重載習(xí)題解答 一 選擇題 1 通過運(yùn)算符重載 可以改變運(yùn)算符原有的 A 操作數(shù)類型B 操作數(shù)個數(shù)C 優(yōu)先級D 結(jié)合性解析 通過運(yùn)算符重載可以改變運(yùn)算符原有的操作數(shù)類型 但是不能改變運(yùn)算符操作數(shù)的個數(shù)以及優(yōu)先級和結(jié)合性 答案 A 2 運(yùn)算符重載是對已有的運(yùn)算符賦予多重含義 因此 A 可以對基本類型 如int類型 的數(shù)據(jù) 重新定義 運(yùn)算符的含義B 可以改變一個已有運(yùn)算符的優(yōu)先級和操作數(shù)個數(shù)C 只能重載C 中已經(jīng)有的運(yùn)算符 不能定義新運(yùn)算符D C 中已經(jīng)有的所有運(yùn)算符都可以重載解析 重載運(yùn)算符的函數(shù)的參數(shù)不能全部是C 的標(biāo)準(zhǔn)類型 例如 不能改變運(yùn)算符 作用于兩個int型數(shù)的含義 即運(yùn)算符函數(shù)的參數(shù)中至少存在一個用戶自定義對象 故選項A錯誤 運(yùn)算符重載不能改變運(yùn)算符原有的優(yōu)先級和結(jié)合性 選項B錯誤 不能重載 選項D錯誤 答案 C 3 下列關(guān)于運(yùn)算符重載的描述中 正確的是 A 運(yùn)算符重載為成員函數(shù)時 若參數(shù)表中無參數(shù) 重載的一定是一元運(yùn)算符B 一元運(yùn)算符只能作為成員函數(shù)重載C 二元運(yùn)算符作為非成員函數(shù)重載時 參數(shù)表中只有一個參數(shù)D C 中可以重載所有的運(yùn)算符解析 有些一元運(yùn)算符既可以作為成員函數(shù)重載 也可以作為友元函數(shù)或普通函數(shù)重載 如取負(fù)運(yùn)算符 故選項B錯誤 運(yùn)算符重載為非成員函數(shù)時 所有的操作數(shù)必須出現(xiàn)在參數(shù)表中 故二元運(yùn)算符參數(shù)表中有兩個參數(shù) 選項C錯誤 C 存在有運(yùn)算符不能被重載 選項D錯誤 答案 A 4 在重載一個運(yùn)算符為成員函數(shù)時 其參數(shù)表中沒有任何參數(shù) 這說明該運(yùn)算符是 A 后綴一元運(yùn)算符B 前綴一元運(yùn)算符C 無操作數(shù)的運(yùn)算符D 二元運(yùn)算符解析 重載一個運(yùn)算符為成員函數(shù)時 對象本身作為一個參數(shù) 故二元運(yùn)算符有一個參數(shù) 當(dāng)重載后綴一元運(yùn)算符時 需要增加一個實(shí)際并不使用的整型參數(shù) 以示區(qū)別 故只有前綴一元運(yùn)算符才沒有任何參數(shù) 答案 B 二 填空題 1 若以非成員函數(shù)形式為類MyClass重載 運(yùn)算符 其操作結(jié)果為一個bool型數(shù) 則該運(yùn)算符重載函數(shù)的原型是 解析 以非成員函數(shù)形式重載一元運(yùn)算符 一定含有一個參數(shù) 此處為類MyClass的常引用 答案 booloperator constMyClass 2 若將一個二元運(yùn)算符重載為類的成員函數(shù) 其形參個數(shù)應(yīng)該是個 解析 運(yùn)算符重載函數(shù)作為成員函數(shù)時 第一個操作數(shù)就是對象本身 并不顯式出現(xiàn)在參數(shù)表中 所以二元運(yùn)算符重載為類的成員函數(shù)時 形參個數(shù)為一個 答案 1 3 運(yùn)算符重載使用的關(guān)鍵字是 解析 運(yùn)算符重載函數(shù)名為 operator運(yùn)算符 可知operator是運(yùn)算符重載使用的關(guān)鍵字 答案 operator 三 編程題 1 定義一個復(fù)數(shù)類Complex 重載運(yùn)算符 使之能用于復(fù)數(shù)的加 減 乘 編程序 分別求兩個復(fù)數(shù)之和 差與積 參考程序 include 編譯預(yù)處理命令usingnamespacestd 使用命名空間std 聲明復(fù)數(shù)類classComplex private 數(shù)據(jù)成員doublereal 實(shí)部doubleimage 虛部 1 定義一個復(fù)數(shù)類Complex 重載運(yùn)算符 使之能用于復(fù)數(shù)的加 減 乘 編程序 分別求兩個復(fù)數(shù)之和 差與積 public 公有函數(shù)Complex doubler 0 doublei 0 real r image i 構(gòu)造函數(shù)voidShow const 輸出復(fù)數(shù)doubleGetReal const returnreal 返回實(shí)部doubleGetImage const returnimage 返回虛部voidSetReal doublerl real rl 設(shè)置實(shí)部voidSetImage doubleig image ig 設(shè)置虛部 voidComplex Show const 輸出復(fù)數(shù) if image 0 cout real image i endl 虛部為負(fù)elseif image 0 cout real endl 虛部為0elsecout real image i endl 虛部為正 1 定義一個復(fù)數(shù)類Complex 重載運(yùn)算符 使之能用于復(fù)數(shù)的加 減 乘 編程序 分別求兩個復(fù)數(shù)之和 差與積 Complexoperator constComplex 返回和 1 定義一個復(fù)數(shù)類Complex 重載運(yùn)算符 使之能用于復(fù)數(shù)的加 減 乘 編程序 分別求兩個復(fù)數(shù)之和 差與積 Complexoperator constComplex 返回積 1 定義一個復(fù)數(shù)類Complex 重載運(yùn)算符 使之能用于復(fù)數(shù)的加 減 乘 編程序 分別求兩個復(fù)數(shù)之和 差與積 intmain 主函數(shù)main Complexz1 2 3 z2 6 5 z3 定義復(fù)數(shù)對象z1 Show 輸出z1z2 Show 輸出z2z3 z1 z2 z3 z1 z2z3 Show 輸出z3z3 z1 z2 z3 z1 z2z3 Show 輸出z3z3 z1 z2 z3 z1 z2z3 Show 輸出z3sy
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年滾筒洗衣機(jī)行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年在線視頻產(chǎn)業(yè)市場深度調(diào)研及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2025-2030年中國鮮味油行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國阿司匹林泡騰片行業(yè)市場深度分析及發(fā)展趨勢與投資研究報告
- 2025-2030年中國鐵電存儲器行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國通風(fēng)保護(hù)膜行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國超細(xì)氫氧化鋁行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國袋裝水包裝機(jī)行業(yè)市場發(fā)展分析及前景趨勢與投資管理研究報告
- 2025-2030年中國苯乙烯異戊二烯苯乙烯(SIS)行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國胡須洗液行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 抗菌藥物臨床應(yīng)用指導(dǎo)原則(2023年版)
- 基因奧秘智能型水潤抗衰深層治療操作流程
- 大學(xué)生創(chuàng)業(yè)計劃書word文檔(三篇)
- 土工織物防護(hù)施工
- 生產(chǎn)性服務(wù)業(yè)集聚對城市產(chǎn)業(yè)結(jié)構(gòu)優(yōu)化的影響共3篇
- 施工單位考察記錄表
- YY/T 1244-2014體外診斷試劑用純化水
- GB/T 26192-2010雙向拉伸聚丙烯可涂覆合成紙薄膜
- GB/T 2546.1-2006塑料聚丙烯(PP)模塑和擠出材料第1部分:命名系統(tǒng)和分類基礎(chǔ)
- GB/T 17702-2021電力電子電容器
- GB/T 17215.421-2008交流測量費(fèi)率和負(fù)荷控制第21部分:時間開關(guān)的特殊要求
評論
0/150
提交評論