计算机二级考试C上机考试试题及答案
为了使广大考生在备战计算机等级考试时,更快的掌握相应知识点,下面是小编搜索整理的计算机二级考试C上机考试试题及答案,供参考练习,预祝考生们考出自己理想的成绩!
程序改错题
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正其中的'错误,使程序正确运行,并且使程序输出的结果为
0K
注意:错误的语句在//******error******的下面,修改该语句即可。
试题程序:
#include
classTC
{
public:
TC()
{
a=b=0:
}
private:
inta,b;
};
classTCl:publicTC
{
public:
TC1()
{
}
//******error******
virtualvoidfunc();
};
classTC2:publicTCl
{
public:
TC2()
{
a=0:
b=0:
}
voidfunc()
{
//******error******
cout<<"OK"<endl;
}
private:
inta;
intb;
};
voidmain()
{
TC20bj;
//******error******
TCl*p=(TCl*)obj;
p->func();
}
答案:
(1)应改为“virtualvoidfunc()=0;”。
(2)应改为“cout<<"0K"<(endl;”。
(3)应改为“TCl*p=(TCl*)&obj;”。
【解析】本题中TCl类中的func函数是纯虚函数,纯虚函数的定义格式为virtual<函数类型><函数名>((参数表>)=0”,因此第1处的语句应为“virtualvoidfunc()=0;”。func函数没有参数表。编译程序后发现第2处的语句有错误,cout流中的数据是用流插入运算符“<<”顺序加入的,因此“<”不正确,应改成“cout<<"0K"<<endl;”。函数的调用方式有2种:非多态调用和多态调用,非多态调用是指不使用指针或引用的直接调用,多态调用是指通过对象的指针或引用的调用。在主函数中定义了tel*p,p是指向基类tcl的指针,因此是多态调用方式,即通过对象的指针来调用,应该把派生类对象的地址赋给p,而不是对象名,因此第3处的语句应改为“tcl*p=(tcl*)&obj;”。
【计算机二级考试C上机考试试题及答案】相关文章:
计算机二级考试C++上机考试试题及答案10-25
计算机二级《C++》上机试题及答案09-03
计算机二级考试C++上机考试试题11-29
计算机二级考试C++试题及答案09-29
计算机二级C++上机考试试题11-12
计算机二级C上机考试程序改错题及答案11-01
计算机二级C++考试试题及答案11-28
计算机二级考试C++上机试题选择题11-16