首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并且使程序输出的结果为: a=7,b=0 a=8,b=10 注意:错误的语句在//******error******的下面
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并且使程序输出的结果为: a=7,b=0 a=8,b=10 注意:错误的语句在//******error******的下面
admin
2018-10-23
50
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并且使程序输出的结果为:
a=7,b=0
a=8,b=10
注意:错误的语句在//******error******的下面,修改该语句即可。
1 #include<iostream.h>
2 class CObj
4 {
4 public:
5 //******error*******
6 friend void func(CObj&,int,int);
7 void display()
8 {
9 //******error******
10 cout<<’’a=’’<<a<¨,b=¨<<<<b<<end1;
11 }
12 private:
13 int a,b;
14 };
15void func(CObj& obj,int t)
16 {
17 obj.a=t;
18 obj.b=0;
19 }
20 void func(CObj& obj,int t,int j)
21 {
22 obj.a=t;
23 obj.b=j;
24 }
25 void main()
26 {
27 //******error******
28 CObj obj1
29 func(obj1,7);
30 obj1.display();
31 func(obj1,8,10);
32 obj1.display();
33 }
选项
答案
(1)添加语句:friend void func(CObj&,int); (2)cout<<’’a=’’<<a<<’’,b=’’<<b<<end1; (3)CObj obj1;
解析
程序中定义了类CObj,其有两个成员变量a和b,通过友元函数func()可改变a和b的值,display()成员函数显示a和b的值。
(1)标识1处是声明一个友元函数,友元函数是在类声明中由关键字Mend修饰的非成员函数,由friend void func(CObj&,int,int)可知,函数func()是CODj类的友元,由程序后面的具体实现可知该函数重载了,已经声明了友元函数friend void func(CObj&,int,int),另外一个友元函数func(CObj& obj,int t)没有声明,因此第1个标识下应添加“friend void func(CObj&,int);”。
(2)display()函数打印类成员变量a和b的值,cout流中的数据是用流插入运算符“<<”顺序加入的,因此“<<<<”不正确,第2个标识下应改为“cout<<’’a=’’<<a<<’’,b=’’<<b<<end1;”。
(3)标识3处是声明类对象,对象声明格式为:<类名><对象名>(<参数表>);,对象声明语句是一个完整的语句,应该以“;”结尾,因此第3个标识下应改为“CObj obj1;”。
转载请注明原文地址:https://kaotiyun.com/show/V5Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
相对于数据库系统,文件系统的主要缺陷有数据关联性差、数据不一致性和
执行完下列语句inta,b,c=&a;int*&p=c;p=&b;后c指向
设有语句intn,m;chara[5],b;cin>>n>>a>>m>>b;为了分别将10和20分别赋给n和m,look赋给a,t赋给b,则正确的输入为
以下关于友元函数的叙述不正确的是
有以下程序main(){inta=5,b=4,c=3,d=2;if(a>b>c)cout<<d<<endl;elseif((c-1>=d)==1)cout<<d+1<<endl
有以下程序:#include<iostream>usingnamespacestd;intmain(){intx=15;while(x>10&&x<50){x+
内联函数是通过______来实现的,因此内联函数是真正的函数。
有以下程序:#include<iostream>usingnamespacestd;intmain(){intx=15;while(x>10&&x<50){x++;if(x/3
以下定义数组中错误的是
随机试题
“不管白猫、黑猫,抓到老鼠就是好猫”,此谚语能够生动地描述某种道德观的基本精神。这种道德观是()
病孩王阿毛是下列哪部作品中的人物形象()
海浮石的功能是________、________、_______;礞石的功效是________、________。
上肢伸展肌力的高强度作业活动为
下列属于会计数据处理功能基本要求的有()。
甲公司是制造业企业,采用管理用财务报表进行分析,下列各项中,属于甲公司金融负债的有()。
在“3.15”消费者权益日的活动中,对甲、乙两家商场售后服务的满意度进行了抽查,如图反映了被抽查用户对两家商场售后服务的满意程度(以下称:用户满意度),分为很不满意、不满意、较满意、很满意四个等级,并依次记为1分、2分、3分、4分.请你根据所学的统计知
《刑法》第6条:“凡在中华人民共和国领域内犯罪的,除法律有特别规定的以外,都适用本法。凡在中华人民共和国船舶或者航空器内犯罪的,也适用本法。犯罪的行为或者结果有一项发生在中华人民共和国领域内的,就认为是在中华人民共和国领域内犯罪。”请分析:第1款中法
以下程序的输出结果是【】。fun(intx,inty,intz){z=x*x+y*y;}main(){inta=31;fun(6,3,a)printf("%d,a)}
What’stheconversationmainlyabout?
最新回复
(
0
)