首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: i=5 i=10 i=15 i=20 注意:错误的语句在//*****error******的下
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: i=5 i=10 i=15 i=20 注意:错误的语句在//*****error******的下
admin
2017-11-27
16
问题
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:
i=5
i=10
i=15
i=20
注意:错误的语句在//*****error******的下面,修改该语句即可。
#include
class CMyClass
{
public:
template
void func(T x,T y)
{
//*****error******
T i=0;
if(x>=i)
{
i=i+x;
}
else
f
i=i+y;
}
cout<<"i="<
}
};
void main()
{
CMyClass t;
t.func(5,0);
//*****error******
t.func(68,(char)1);
float i=10.0;
//*****error******
t.func(i,1);
t.func(5,5);
}
选项
答案
(1)static T i=0; (2)t.func((char)68,(char)1); (3)t.func((int)i,1);
解析
(1)在主函数内定义了类CMyClass对象t,第一次调用func()函数传入整型参数5和0,此时T表示整型(int),5>0,此时i和x的和为5,故屏幕输出i的值为i=5;第二次调用func()函数,传入参数为char型数据,此时T表示字符型(char),chari=0,68>0,故i为68,屏幕输出ASCII码为68的字符,即i=D;第三次调用func()函数,传入整型数据10和1,此时T表示整型(int),输出为i=15,显然如果i为一般的局部变量,输出应该是i=10(10>0,i=10+0=10),这里i记忆了第一次调用func()函数后的值(i=5,10>5,10+5=15),故i为静态变量,因此第1个标识下应改为“smile T i=0:”。
(2)func()函数两个参数类型一致,从输出结果看,第二次调用func()传入的参数均是char型的,故第2个标识下应改为“t.func((char)68,(char)1);”,(char)68和(char)1含义是做强制类型转换,将整型转换成char型。
(3)第3个标识下传入参数1为整型,局部变量i为float型,由输出结果可知,第四次调用func()函数也改变了静态变量i(static int i)的值,故传入的参数均为整型,因第3个标识下的局部变量i(float型)也要强制类型转换,故第3个标识下应改为“t.func((int)i,1);”。
转载请注明原文地址:https://kaotiyun.com/show/KJAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
C++语言是以()语言为基础逐渐发展演变而成的一种程序设计语言。
运算符重载仍然保持其原来的优先级、________和________
在程序设计阶段应该采取________和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,进而用某种程序设计语言写成程序。
软件结构是以______为基础而组成的一种控制层次结构。
若有如下语句#include<iostream.h>voidmain(){intx=3;do{x=x-2cout<<x;{while(!(--x);}则上面程序段
对下列语句正确的描述是()。constint*x;∥(1)int*constx;∥(2)
下列不是循环语句的是
在长度为n的有序线性表中进行二分查找,需要的比较次数为
下列程序将x,y和z按从小到大的顺序排列,请将下面的函数模板补充完整。template<classT>voidfun(______){Ta;if(x>y)
随机试题
某市市场监督管理局制发《关于申请增发部分工作经费的请示》,应署名的作者是()
在分析过程中,由于环境温度变化、气压及电压的波动而引起的误差叫做偶然误差。
男,50岁,潜水员工作22年,近1年来右髋关节疼痛,经服用非甾体类药物可短暂缓解,后疼痛加重并呈持续性,渐出现跛行及行走困难。最可能的诊断是
关于商业辐射区域不正确的说法为()。
下列针对保修期限的合同条款中,不符合法律规定的是()。[2015年真题]
关于网络计划的说法,正确的是()。
下列选项中不属于工资计算所需要的原始单据的是()。
有一笔国债,5年期,平价发行,票面利率12.22%,单利计息,到期一次还本付息,到期收益率(复利按年计息)是()。
下面历史典故与相应的历史人物对应正确的一组是:
Humanneedsseemendless.Whenahungrymangetsameal,hebeginstothinkaboutanovercoat;whenamanagergetsanewsports
最新回复
(
0
)