首页>计算机等级考试>模拟试题>正文
2010年下半年计算机等级考试二级C++上机试题及解析(五)

www.zige365.com 2010-7-6 14:16:13 点击:发送给好友 和学友门交流一下 收藏到我的会员中心

  (4)完成Company类成员函数voidCompany::print()的定义,使其以"_ispaid_RMBforonemonth"的格式输出公司内所有员工的月薪信息。请在注释“//**4**”之后添加适当的语句。

  注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。

  源程序清单如下:

  #include<iostream.h>

  #include<string.h>

  classCEmployee

  { public:

    voidputname(charn[50]){strcpy(name,n);}

    voidgetname(charn[50]){strcpy(n,name);}

    voidputpay(doubled){pay=d;}

    doublegetpay(){returnpay;}

    private:

    //**1** };

  classCompany

  { private:

    CEmployee*emp;

    intnum;

    public:

    Company(intn);

    voidadd(intcode,charname[50],doublepay);

    voidprint(); };

  Company::Company(intn)

  { //**2** }

  voidCompany::add(intcode,charname[50],doublepay)

  { //**3** }

  voidCompany::print()

  { //**4**

    for(inti=0;i<num;i++)

    { (emp+i)->getname(c);

      money=(emp+i)->getpay();

      cout<<c<<"ispaid"<<money<<

"RMBforonemonth"<<endl; } }

  voidmain()

  { Companycom(2);

    com.add(0,"Jack",200);

    com.add(1,"Lee",300);

    com.print(); }

  【参考答案】

  (1)char name[50];

  double pay;

  (2)num=n;

  emp=new CEmployee[num];

  (3)(emp+code)->putname(name);

  (emp+code)->putpay(pay);

  (4)char c[50];

  double money;

  【试题解析】

  本题考查类成员的定义、类成员函数的定义与调用、对象数组的使用。注意指针和动态申请空间new的使用方法。使用指针调用成员应该用"->"符号,new的返回值是指针类型的。

本新闻共2页,当前在第2页  1  2  

我要投稿 新闻来源: 编辑: 作者:
相关新闻