在线现看午夜福利片|女人16久久免费视频|鲁丝片一区鲁丝片二区鲁丝|一区二区三区欧美在线

  1. 
    
    <b id="glvx9"></b>
        1. <blockquote id="glvx9"><meter id="glvx9"></meter></blockquote>
            首頁(yè) - 網(wǎng)校 - 萬(wàn)題庫(kù) - 美好明天 - 直播 - 導(dǎo)航

            2017年9月計(jì)算機(jī)二級(jí)C++考試操作題最后一套題

            來(lái)源:考試吧 2017-09-22 14:51:26 要考試,上考試吧! 萬(wàn)題庫(kù)
            “2017年9月計(jì)算機(jī)二級(jí)C++考試操作題最后一套題”供考生參考。更多計(jì)算機(jī)等級(jí)考試模擬試題等信息請(qǐng)?jiān)L問考試吧計(jì)算機(jī)等級(jí)考試網(wǎng)。
            第 1 頁(yè):基本操作題
            第 2 頁(yè):簡(jiǎn)單應(yīng)用題

              綜合應(yīng)用題

              3[簡(jiǎn)答題]

              使用VC6打開考生文件夾proj3下的工程proj3,其中定義了一個(gè)字符串變量類StringVar。類成員的說(shuō)明在程序注釋中。請(qǐng)?jiān)?/ ******** 333 ******** 和// ******** 666 ******** 之間填寫StringVar成員函數(shù)和友元函數(shù)的實(shí)現(xiàn)代碼。在main函數(shù)中給出了一組測(cè)試數(shù)據(jù),運(yùn)行時(shí)輸入:

              Hello Kitty

              此情況下程序的輸出應(yīng)該是:

              Hello Kitty

              Borg

              Borg

              注意:只需在// ******** 333 ******** 和// ******** 666 ******** 之間填入所編寫的若干語(yǔ)句,不要改動(dòng)程序中的其他內(nèi)容。

            2017年9月計(jì)算機(jī)二級(jí)C  考試操作題最后一套題

            2017年9月計(jì)算機(jī)二級(jí)C  考試操作題最后一套題

              參考解析:【參考答案】

            2017年9月計(jì)算機(jī)二級(jí)C  考試操作題最后一套題

            2017年9月計(jì)算機(jī)二級(jí)C  考試操作題最后一套題

              【考點(diǎn)分析】

              本題考查構(gòu)造函數(shù)和析構(gòu)函數(shù)的定義、類的成員函數(shù)、重載流運(yùn)算符>>和插入運(yùn)算符<<和預(yù)定義流對(duì)象。

              【解題思路】

              由StringVar.h這個(gè)頭文件可知:頭文件中定義了StringVar類,它包含的成員信息如下:

              兩個(gè)數(shù)據(jù)成員:char * 類型的value,指向字符串的首地址;int類型的max_length,表示字符串的最大長(zhǎng)度。兩個(gè)構(gòu)造函數(shù):接收int類型的構(gòu)造函數(shù)和接收const char a[]的構(gòu)造函數(shù)。一個(gè)復(fù)制構(gòu)造函數(shù):用參數(shù)strobj對(duì)象的成員值給當(dāng)前對(duì)象的成員賦值;

              析構(gòu)函數(shù):使用delete[]釋放value指向的地址空間;length()成員函數(shù):返回成員value指向的字符串長(zhǎng)度;input_line()成員函數(shù):使用輸入流參數(shù)輸入一個(gè)字符串,保存到value指向的內(nèi)存空間;getValue()成員函數(shù):常成員函數(shù),返回value的值。

              另外類定義體外部還聲明一個(gè)重載“<<”運(yùn)算符函數(shù),將StringVar對(duì)象中value指向的字符串輸出,并返回輸出流outs的引用

              StringVar.h中,已經(jīng)給出的定義有:析構(gòu)函數(shù)、length()函數(shù)和getValue()函數(shù),所以需要我們完成的函數(shù)定義有:構(gòu)造函數(shù)、復(fù)制構(gòu)造函數(shù)、input_line()函數(shù)和重載的“<<”運(yùn)算符函數(shù)

             、賁tringVar(int size);

              題意指出,size為字符串長(zhǎng)度(字符個(gè)數(shù))初始值,字符串內(nèi)容初始化為空串,所以需要使用size設(shè)置成員max_length,為value申請(qǐng)size個(gè)字符的存儲(chǔ)空間,并把value的第一個(gè)字符設(shè)置為'\0'表示空串,這樣保證析構(gòu)函數(shù)的delete[]也是正確的。

             、赟tringVar(const char a[]);

              題意指出,使用參數(shù)數(shù)組a的內(nèi)容初始化對(duì)象的成員,即將數(shù)組a中的內(nèi)容,存放到value指向的內(nèi)存空間,由于value是使用new分配的(保證析構(gòu)函數(shù)的delete[]是正確的),所以不能簡(jiǎn)單的把數(shù)組a的首地址賦給value,需要將數(shù)組a的內(nèi)容復(fù)制到value指向的內(nèi)存空間中,另外成員max_length,初值最小必須是value指向的內(nèi)存空間長(zhǎng)度,即value指向的字符串長(zhǎng)度+1(題意中max_length表示字符個(gè)數(shù)的最大值,所以需要包含字符串結(jié)束符'\0')(此構(gòu)造函數(shù)的形參必須傳入的是字符串,如果是字符數(shù)組,必須傳入數(shù)組的長(zhǎng)度,以防數(shù)組a的最后一個(gè)字符不是結(jié)束符'\0',此時(shí)strlen()函數(shù)獲取的長(zhǎng)度,就不是字符數(shù)組a的字符個(gè)數(shù))

             、跾tringVar(coast StringVar& strobj);

              復(fù)制構(gòu)造函數(shù)需要將形參strobj的成員賦給當(dāng)前調(diào)用該復(fù)制構(gòu)造函數(shù)的對(duì)象成員,在賦值value時(shí),同樣需要為value分配足夠的內(nèi)存空間。

              ④input_line(istream& ins);

              input_line()函數(shù)需要使用形參ins輸入流,輸入一個(gè)字符串存放到value中,題意要求可以輸入空格,所以我們不能直接用輸入流ins和輸入運(yùn)算符,因?yàn)檩斎脒\(yùn)算符會(huì)丟棄空白符、空格符和制表符,可以使用輸入流ins的成員函數(shù):get()和while循環(huán),逐個(gè)輸入字符存放到value下標(biāo)i的字符中,直到輸入的字符為換行符或value存滿(i=max_length)為止,當(dāng)這兩個(gè)條件滿足其一,那么就應(yīng)該停止輸入,另外需要注意:value指向的字符串結(jié)尾,必須包含空字符'\0',所以下標(biāo)max_length-1必須是空字符,循環(huán)輸入時(shí),i取值最大為max_length-2。

             、輔stream& operator << (ostream&outs,coast StringVar the_string);

              輸出運(yùn)算符重載函數(shù),題意要求將the—strin9通過輸出流outs輸出,由于the_string是StringVar對(duì)象,所以輸出的應(yīng)該是對(duì)象的成員value指向的字符串,根據(jù)返回值可知,函數(shù)必須返回輸入流ostream的引用;另外由于第一形參是輸入流outs,所以無(wú)法通過StringVar對(duì)象來(lái)調(diào)用,該函數(shù)不是類的成員函數(shù),函數(shù)定義時(shí),不能限定StringVar作用域,由于該函數(shù)不是類的成員函數(shù),所以使用輸出流outs輸出value指向的字符串時(shí),不能直接使用私有成員value,而是應(yīng)該使用getValue()公有成員函數(shù),返回value的值,再輸出。

            掃描/長(zhǎng)按二維碼幫助考試通關(guān)
            2017等考各科真題答案
            2017等考各科通關(guān)技巧
            2017各科最新預(yù)測(cè)試卷
            2017等考成績(jī)查詢時(shí)間

            微信搜索"考試吧"了解更多考試資訊、下載備考資料

            上一頁(yè)  1 2 3 

              相關(guān)推薦:

              2017年全國(guó)計(jì)算機(jī)等級(jí)考試時(shí)間|教材目錄(2017年版)

              2017年9月計(jì)算機(jī)等級(jí)考試真題|計(jì)算機(jī)等級(jí)考試答案

              各地2017年9月計(jì)算機(jī)等考成績(jī)查詢時(shí)間|免費(fèi)查分提醒

              計(jì)算機(jī)等級(jí)考試成績(jī)?cè)u(píng)定流程及標(biāo)準(zhǔn)|合格證書樣本及證書說(shuō)明

              歷年真題匯總|考試吧特別策劃:2017年計(jì)算機(jī)等級(jí)考試報(bào)考指南

            文章搜索
            萬(wàn)題庫(kù)小程序
            萬(wàn)題庫(kù)小程序
            ·章節(jié)視頻 ·章節(jié)練習(xí)
            ·免費(fèi)真題 ·?荚囶}
            微信掃碼,立即獲!
            掃碼免費(fèi)使用
            • 1
            • 2
            • 3
            • 4
            • 5
            • 6
            • 7
            • 8
            • 9
            • 10
            此欄目下沒有文章
            版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。
            Copyright © 2004- 考試吧計(jì)算機(jī)等級(jí)考試網(wǎng) 出版物經(jīng)營(yíng)許可證新出發(fā)京批字第直170033號(hào) 
            京ICP證060677 京ICP備05005269號(hào) 中國(guó)科學(xué)院研究生院權(quán)威支持(北京)
            在線模擬試題
            考證通關(guān)殺器
            考試最新資訊
            學(xué)
            一次通關(guān)技巧