问答题

使用VC6打开考生文件夹下的工程test11_1,此工程包含一个源程序文件test11_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下: ch1=7 ch2=9 源程序文件test11_1.cpp清单如下: #include<iostream.h> class Sample { /**************** found ***************/ char ch1,ch2 public: /************** found ***************/ friend void set(Sample s, char c1,char c2) { s.ch1=c1; s.ch2=c2; } void print() {cout<<"ch1="<<" ch2="<<ch2<<end1;} }; void main() { Sample obj; /************* found ****************/ obj.set(obj,’7’,’9’); obj.print(); }

【参考答案】

(1)错误:char ch1,ch2 正确:char ch1,ch2;(2)错误:friend void set(Sam......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
热门 试题

问答题
使用VC6打开考生文件夹下的工程test11_3。此工程包含一个test11_3.cpp,其中定义了类CPosition,但该类的定义都并不完整。请按要求完成下列操作,将类CPosition的定义补充完整。(1)在类定义外完成重载的两个构造函数CPosition()和CPosition(double dx,double dy),其中前者为不带参数的构造函数,使CPosition对象的默认值为x=0,y=0,后者为带参数的构造函数,把数据成员x和y分别初始化为参数dx和dy的值。请在注释“ **1**”之后添加适当的语句。(2)在类体中添加函数move(double ax,double ay)的定义,使得点的坐标x和y分别移动ax和ay个单位,请在注释“ **2**”之后添加适当的语句。(3)完成函数double distance (double bx,double by)的定义,该函数返回*this和点(bx,by)的距离,请在注释“ **3**”之后添加适当的语句。注意:除在指定的位置添加语句外,请不要改动程序中的其他语句。源程序文件test11_3.cpp清单如下:#include<iostream.h>#include<math.h>class CPosition{public:CPosition();CPosition(double dx,double dy);double getx();double gety(); ** 2 **double distance(double bx,double by);private:double x;double y;}; ** 1 **{x=0;y=0;}CPosition::CPosition(double dx,double dy){x=dx;y=dy;}double CPosition::getx(){return x;}double CPosition::gety(){return y;}double CPosition::distance(double bx,double by){ ** 3 **}void main(){double a,b;cout << Input x, y position of a point: ;cin >> a >> b;CPosition psA(a,b);cout << “Input x,y position of another point: ;cin >> a >> b;cout << The distance is << psA.distance(a,b) <<endl;}