2013年计算机二级考试C++进行模拟测试六_第4页

考试站(www.examzz.com)   【考试站:中国教育考试第一门户】   2013年3月22日
 三、综合应用题
  使用VC6打开考生文件夹下的工程kt4_3,此工程包含一个源程序文件kt4_3.cpp,其中定义了用于表示向量的类vector,但类vector的定义并不完整。请按要求完成下列操作,将类vector的定义补充完整。
  (1)补充类vector的构造函数,该函数有参数x和y,它们都是int型的数据,默认值都为0。请使用参数列表的形式分别将类的数据成员a和b分别初始化为参数x和y的值。请在注释“//**1**”之后添加适当的语句。
  (2)完成类vector的成员函数input(intx,inty)的定义,将int型的参数x和y分别赋值给数据成员a和b,请在注释“//**2**”之后添加适当的语句。
  (3)完成类vector的友元函数frienddoubleMultiply(vector&x,vector&y)的定义,先定义double型的临时变量c,然后将参数对象x和对象y的数据成员a与b分别相乘再相加后赋值给c,最后返回c的值,将请在注释“//**3**”之后添加适当的语句。输出结果如下:
  (10,20)
  (2,3)
  80
  注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
  源程序如下:
  #include
   classvector
  {
  inta;
  intb;
  public: 来源:考试大网
  //**1**
  voidinput(intx,inty)
  {//**2**}
  voidoutput()
  {cout<<'('<
  frienddoubleMultiply(vector&x,vector&y);
  };
  doubleMultiply(vector&x,vector&y)
  {
  //**3**
  c=x.a*y.a+x.b*y.b;
  returnc;
  }
  voidmain()
  {
  vectorx(10,20),y;
  doubled;
  y.input(2,3);
  d=Multiply(x,y);
  x.output();
  y.output();
  cout<
  }
  【参考答案】
  (1)vector (int x=0,int y=0):a(x),b(y){}
  (2)a=x; b=y;
  (3)double c;
  【试题解析】
  本题主要考查类的定义和友元函数定义,其中(1)中的参数列表形式和(3)中对象访问成员使用“.”操作符。
首页 1 2 3 4 尾页

相关文章