首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: i=5 i=10 i=15 i=20 注意:错误的语句在//******error******的
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: i=5 i=10 i=15 i=20 注意:错误的语句在//******error******的
admin
2018-10-23
27
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:
i=5
i=10
i=15
i=20
注意:错误的语句在//******error******的下面,修改该语句即可。
1 #include<iostream.h>
2 class CMyClass
3 {
4 public:
5 template<class T>
6 void func(T x,T y)
7 {
8 /********error********/
9 T i=0;
10 if(x>=i)
11 {
12 i=i+x;
13 }
14 else
15 {
16 i=i+y;
17 }
18 cout<<’’i=’’<<i<<end1;
19 }
20 };
21 void main()
22 {
23 CMyClass t;
24 t.func(5,0);
25 /********error********/
26 t.func(68,(char)1);
27 float i=10.0;
28 /********error********/
29 t.func(i,1);
30 t.func(5,5);
31 }
选项
答案
(1)static T i=0; (2)t.func((char)68,(char)1); (3)t.func((int)i,1);
解析
程序当中定义了类CMyClass,含有一个成员函数模板func(T x,T y),在函数内定义一个变量i,如果参数x大于i,则i和x的和赋值给i,否则i和Y的和赋值给i。
(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个标识下应改为“static 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/kwAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下关于友元函数的叙述不正确的是()。
下列程序的运行结果是()。#include<iostream.h>intx=5;intfun(intA){intC;C=X*a;returnC;}voidmain()
数据字典是各类数据描述的集合,它通常包括5个部分,即数据项、数据结构、数据流;______和处理过程。
下列叙述中正确的是()。
下面关于break语句的描述中,不正确的是()。
在测试时,完全不考虑程序的内部结构和内部特征的测试方法称为_______测试方法。
已知在一个类体中包含如下函数原型:VOLUMEOPERATOR-(VOLUME)const;,下列关于这个函数的叙述中,错误的是()。
在一个容量为25的循环队列中,若头指针front=15,尾指针rear=6,则该循环队列中共有______个元素。
在表达式x-y中,"-"是作为非成员函数重载的运算符。若使用显式的函数调用代替直接使用运算符"-",这个表达式还可以表示为
下列程序用于将源文件中的字母进行大小写转换,while的条件是______。#include<iostream.h>#include<fstream.h>#include<iomanip.h>voidmain()
随机试题
率的标准化法的意义是()。
下列不同计价方式的合同中,施工承包单位承担风险相对较大的是()。
下列关于历史成本计量的表述中,正确的是()。
申请设立期货公司,应当符合《中华人民共和国公司法》的规定,并且其主要股东以及实际控制人(),信誉良好,最近3年无重大违纪违规记录。
答案中的金额用人民币万元表示,有小数点的保留两位小数,小数点后四舍五入。甲股份有限公司(以下简称甲公司)是一家上市公司,XYZ会计师事务所于2×10年10月接受审计委托,XYZ会计师事务所决定由合伙人注册会计师A负责该项审计业务,并指派注册会计师B担任
从所给的四个选项中,选择最合适的一个填入问号处,使之呈现一定的规律性:
挪用公款给他人使用的,使用人在下列何种情况下,构成挪用公款罪的共犯?()
InvasiveweedsareaseriousprobleminAustraliaWeeds【C1】______thebiodiversityofAustralia’suniquewaterways,NationalPark
法律权利和法律义务是一对关系密切的概念。从基本内容看
A、Alexisengagedinshowbusinesswhenhewas20.B、Alexisplaysaleadingroleineveryfilmheacts.C、Alexisisaneasy-going
最新回复
(
0
)