计算机二级考试C++上机考试试题
计算机二级考试有分笔试题以及上机操作题,下面就是跟大家分享计算机二级考试C++上机考试试题,欢迎大家阅读!
一、程序改错题
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正错误,使程序正常运行,并且要求最后一个catch必须抛出执行的任何异常。
程序异常,输出信息为
error
O
ERROR
注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在//******error******的下面。
试题程序:
#include
intmain()
{
try
{
throw("error");
}
//********error********
catch(chars)
{
cout<
}
try
{
throw((int)0);
}
//********error********
catch()
{
cout<
}
try
{
throw(O);
throw("error");
}
//********error********
catch()
{
cout<
}
return0;
}
二、简单应用题使用VC++6.0打开考生文件夹下的源程序文件2.cpp。请补充完整程序fun(inti),使其完成以下功能:如果i=5,则输出如下5行#号。
#
##
###
####
#####
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include
voidfun(inti)
{
}
intmain()
{
fun(5);
return0;
}
三、综合应用题使用VC++6.0打开考生文件夹下的源程序文件3.cpp。程序通过继承关系,实现对姓名的控制。类TC1实现对名字访问的接口,TC2实现对名字的设置和输出。
程序输出为
TC2Name
May
其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)在类TCl中定义接口函数GetName为纯虚函数。请在注释1后添加适当的语句。
(2)函数GetName2用于获得名字的缓存,但只获得允许读操作这个缓存,请在注释2后添加适当的语句。
(3)实现TC2的构造函数,请在注释3后添加适当的语句。
(4)完成TC2的构造函数,实现对名字的处理。请在注释4后添加适当的语句。
注意:增加或者修改代码的位置已经用符号表示出来,请不要修改其他的程序代码。
试题程序:
#include
classTC1
{
public:
//********1********
};
classTC2:publicTCl
{
public:
voidGetName()
{
cout<
}
//********2********
{
returnm_str;
}
//********3********
{
inti:
for(i=0;str[i]!=0;i++)
m_str[i]=str[i];
//********4********
}
private:
charm_str[32];
};
voidmain()
{
TCl*P;
TC20bj1("May");
p=&objl;
p->GetName();
cout