上機(jī)部分
一、改錯題
使用VC6打開考生文件夾下的工程kt4_1,此工程包含一個源程序文件kt4_1.cpp,但該程序運(yùn)行有問題,請改正程序中的錯誤,使程序的輸出結(jié)果如下:
1:
weight:5
age:0
2:
weight:7
age:9
源程序文件kt4_1.cpp清單如下:
#include
classanimal
{
public:
/****************found*******************/
friendvoidsetvalue(animal&,int);
/****************found*******************/
viodprint();
protected:
intitsweight;
intitsage;
};
voidanimal::print()
{
cout<<"weight:"<
cout<<"age:"<
}
voidsetvalue(animal&ta,inttw)
{
ta.itsweight=tw; www.Examda.CoM
ta.itsage=0;
}
voidsetvalue(animal&ta,inttw,inttn)
{
ta.itsweight=tw;
ta.itsage=tn;
}
voidmain()
{/****************found*******************/
animalpeppy
setvalue(peppy,5);
cout<<"1:"<
peppy.print();
setvalue(peppy,7,9);
cout<<"2:"<
peppy.print();}
【參考答案】
(1)添加友元函數(shù)的聲明
friend void setvalue(animal&,int,int);
(2)將viod print();改為:void print();
(3)將animal peppy改為:animal peppy;
【試題解析】
(1)主要考查對成員函數(shù)定義規(guī)則的掌握,成員函數(shù)必須先聲明再使用,即使是友元函數(shù)也不例外;
(2)主要考查對關(guān)鍵字的掌握,空類型應(yīng)用void;
(3)主要考查對變量定義的掌握,該處缺少“;”。
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |