- 相關(guān)推薦
計(jì)算機(jī)二級C++練習(xí)題:程序改錯題
為了使廣大考生在備戰(zhàn)計(jì)算機(jī)等級考試時,更快的掌握相應(yīng)知識點(diǎn),下面是小編搜索整理的計(jì)算機(jī)二級C++練習(xí)題:程序改錯題,供參考練習(xí),預(yù)?忌鷤兛汲鲎约豪硐氲某煽!
計(jì)算機(jī)二級C++練習(xí)題:程序改錯題01
使用VC6打開考生文件夾下的工程kt9_1,此工程包含一個源程序文件kt9_1.cpp,但該程序運(yùn)行有問題,請改正程序中的錯誤,使程序的輸出結(jié)果如下:
4,5
20
源程序文件清單如下:
#include
classA
{protected:
intn,m;
public:
voidset(inta,intb){m=a;n=b;}
voidshow(){cout<<m<<","<<n<<endl;}
/**********found**********/}
classB:publicA
{ints;
public:
voidset(){s=m*n;}
voidshows(){cout<<s<<endl;}};
voidmain()
{
Bb;
/**********found**********/
b.set();
b.show();
b.set();
/**********found**********/
b.show();
}
【參考答案】
(1)在“}”后添加分號
。2)將b.set();改為:b.A::set(4,5);
。3)將b.show();改為:b.shows();
【試題解析】
(1)主要考查對類定義格式的掌握,類的結(jié)尾應(yīng)該使用";";
。2)主要考查對基類與派生類函數(shù)調(diào)用關(guān)系的掌握,根據(jù)所要求的輸出結(jié)果,應(yīng)該調(diào)用的'函數(shù)為類A的set,而不是類B自身的set函數(shù),應(yīng)該避免調(diào)用的二義性;
。3)主要考查對繼承與派生的理解,由所要求輸出結(jié)果可知正確:b.shows()。
計(jì)算機(jī)二級C++練習(xí)題:程序改錯題02
使用VC6打開考生文件夾下的工程kt10_1,此工程包含一個源程序文件kt10_1.cpp,但該程序運(yùn)行有問題,請改正程序中的錯誤,使程序的`輸出結(jié)果為:
classBase
classD1
classD2
classD3
finBase
源程序文件kt10_1.cpp清單如下:
#include
classBase
{public:
Base(){cout<<"classBase"<<endl;}
voidf(){cout<<"finBase"<<endl;}};
classD1:virtualpublicBase
{public:
D1(){cout<<"classD1"<<endl;}
voidf(){cout<<"finD1"<<endl;}};
/**********found**********/
classD2:publicBase
{public:
D2(){cout<<"classD2"<<endl;}};
/**********found**********/
classD3::publicD1,publicD2
{public:
D3(){cout<<"classD3"<<endl;}};
voidmain()
{D3d;
/**********found**********/
d.f();}
【參考答案】
(1)將classD2:publicBase
改為:classD2:virtualpublicBase
。2)將classD3::publicD1,publicD2
改為:classD3:publicD1,publicD2
。3)將d.f();改為:d.Base::f();
【試題解析】
。1)主要考查對虛基類的理解,虛基類可以解決二義性的問題,其定義方式是在繼承列表中使用virtual關(guān)鍵字,使用虛基類可以避免程序運(yùn)行中對基類函數(shù)調(diào)用的不惟一;
。2)主要考查對類的定義方法的掌握,“::”為作用域符,此處應(yīng)該使用“:”,因?yàn)楹竺媸抢^承列表;
。3)主要考查對虛基類函數(shù)調(diào)用過程的理解,只有使用"::"限定才能訪問基類函數(shù),否則將會調(diào)用自身的函數(shù),如果該類沒有該函數(shù)的定義,則會自動調(diào)用其父類的該函數(shù),所以必須使用“::”符號。
【計(jì)算機(jī)二級C++練習(xí)題:程序改錯題】相關(guān)文章:
2016計(jì)算機(jī)二級《C++》練習(xí)題及答案08-14
2016計(jì)算機(jī)二級《C++》上機(jī)練習(xí)題06-09
2017計(jì)算機(jī)二級C++強(qiáng)化練習(xí)題08-17
2017計(jì)算機(jī)二級C++考前練習(xí)題09-18
2016計(jì)算機(jī)二級考試《C++》練習(xí)題及答案10-23
2016計(jì)算機(jī)二級《C++》上機(jī)強(qiáng)化練習(xí)題10-21
2016計(jì)算機(jī)二級考試C++練習(xí)題及答案07-15