上机考试试题答案与解析
一、程序改错题
(1)应改为“Tmin(TX,Ty)”。
(2)应改为“charc=’a’;”。
(3)应改为“usingnamespacestd;”。
【解析】本题C++是区分大小写的,“template T>”语句中定义的模板类为T不是t,所以第1处的“tmin(tx,ty)”修改为“Tmin(Tx,Ty)”。第2处的“charc="a";”语句中的变量a为char型,赋值为字符a,在C++中应该使用单引号标注字符变量,而不是双引号,所以修改为“charC=’a’;”。在程序中用到C++标准库时,要使用std标准命名空间进行限定。cout为标准库函数,所以要声明cout是在命名空间std中定义的流对象,即添加“usingnamespacestd;”。
二、简单应用题
inti;
for(i=0;i {
intj;
for(j=0;j(n-i-1;j++)//循环打印空格
{
cout<<’’;
}
for(;j {
cout<<"A":
}
cout< }
【解析】本题利用外层循环打印每一行。内层循环分为
打印空格和打印A。打印空格由第一个位置到第n-i-1。打印A,是由打印完空格开始一直到行结束。在外循环中打印每一行的结束符。
三、综合应用题
(1)应添加“char*name;intage;”。
(2)应添加“classTC0:publicTC”。
(3)应添加“~TCO()”。
(4)应添加“classTC1:publicTC”。
【解析】本题第1处要求“TC中定义name为字符串类型,age为整型”。根据题目要求,在程序TC类中定义变量name和age,即“char*name;intage;”。第2处要求“设置类TC0的基类为TC类的定义”。在C++中,从已有的类产生一个新的子类,称为类的派生。声明派生类的一般形式为“ClaSS派生类名:[继承方式]慕类名”。根据声明派生类的一般形式,这里补全“classTC0:publicTC”。第3处要求“在类TC的派生类TCO的公有成员中定义析构函数TC0”。析构函数也是一个特殊的成员函数,它的作用与构造函数相反,它的名称是在类名前面加一个“~”符号。题目中要求的类名称为“TCO”即这里补全“~TCO()”。第4处要求“设置类TCl的基类为TCl类的定义”,在第4处补充“ClassTCl:public,TC”。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |