首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹progl下的工程progl,该工程中包含程序文件main.cpp,其中有Salary(“工资”)类和主函数main的定义。程序中位于每个“//ERROR ****found****”之后的一行语句行有错误,请加
请使用VC6或使用【答题】菜单打开考生文件夹progl下的工程progl,该工程中包含程序文件main.cpp,其中有Salary(“工资”)类和主函数main的定义。程序中位于每个“//ERROR ****found****”之后的一行语句行有错误,请加
admin
2016-06-12
36
问题
请使用VC6或使用【答题】菜单打开考生文件夹progl下的工程progl,该工程中包含程序文件main.cpp,其中有Salary(“工资”)类和主函数main的定义。程序中位于每个“//ERROR ****found****”之后的一行语句行有错误,请加以改正。改正后程序的输出结果应为:
应发合计:3500应扣合计:67.5实发工资.3432.5
注意:只修改每个“//ERROR****found****”下的那一行,不要改动程序中的其他内容。
#include
using namespace std;
class Salary{
public:
Salary(const char*id,double thebase,double the—bonus,double the—tax)
//ERROR***********found***********
:the base(base),the bonus(bo
nus),the tax(tax)
{
staff id=new char[ strlen(id)+1];
strcpy(staff_id,id);
}
//ERROR***********found***********
~Salary(){delete*staff—id;)
double getGros s Pay()const{return
base+bonus;}//返回应发项合计
double getNetPay()const{return get
GrossPay()一tax;)//返回实发工资额private:
char*staff id; //职工号
double base; //基本工资
double bonus; //奖金
double tax; //代扣个人所得税
};
int main(){
Salary pay(“888888”,3000.0,500.0,67.50);
cout<<“应发合计:”<
cout<<“应扣合计:”<
//ERROR***********found*************
cout<<“实发工资:”<
return 0;
}
选项
答案
(1):base(the—base),bonus(the—bonus),tax(the—tax) (2)~Salary(){delete[]staff_id;} (3)cout<<”实发工资:”<
解析
本题考查的是Salary类,其中涉及动态数组、构造函数、析构函数和const函数。构造函数一般使用成员列表初始化,括号内应该为形参。析构函数使用delete语句释放指针,格式为:delete[]指针。
【解题思路】
(1)主要考查考生对构造函数的掌握情况,构造函数的成员初始列表要把形参放在括号内。
(2)主要考查考生对析构函数的掌握情况,析构函数使用delete释放指针,delete后要跟标识符“[]”。
(3)主要考查考生对成员函数调用的掌握情况,调用类的成员函数使用标识符“.”,而不是作用域符“::”。
转载请注明原文地址:https://kaotiyun.com/show/IiNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
已知各变量的定义如下 inti=8,k,a,b; unsignedlongw=5; doublex=1.42,y=5.2; 则以下符合C++语言语法的表达式是
下面程序输出的结果是 #include<iostream.h> voidmain() {inti; inta[3][3]={1,2,3,4,5,6,7,8,9}; for(i=0;i<3;i++) cout<<a[i
若二维数组b有m列,则在b[i][j]前的元素的个数为【】。
有以下程序:#include<iostream>usingnamespacestd;intmain(){inti=010,j=10;cout<<(++i)<<","<<i--<<end1
下列关于运算符重载不正确的是
若运行时给变量x输入12,则以下程序的运行结果是 #include<iostream.h> voidmain() { intx,y; cin>>x; y=x>12?x+lO:x-12; cout<<y; c
有如下程序: #include"iostream.h" voidmain() { intx=1,a=0,b=0; switch(x){ case0:b++; case1:a++; case2:a++;b++;
下列叙述中,正确的是()。
下列叙述中,正确的是()。
随机试题
下列关于亲属语言的表述,不正确的一项是
正确的口腔健康模式是()
替代学习疗法属于下列哪项
已知:甲公司股票的必要报酬率为12%。乙公司2015年1月1日发行公司债券,每张面值1000元,票面利率8%,5年期。已知:(P/A,12%,3)=2.4018,(P/F,12%,3)=0.7118,(P/F,12%,2)=0.7972,(P/F,12%
现实生活中虽没有龙,却有龙的形象、龙的概念。这一情形表明()。
下列关于我国古代文化常识的表述,不正确的一项是:
甲租用乙的地种粮食,今年共收获3000斤粮食,包括大米、玉米和红薯。其中玉米800斤,红薯600斤。如果除租金之外,甲每年须将收获的大米的N%给乙作为回报,同时将红薯超过粮食总重的15%的部分也按照N%给乙作为回报,甲今年一共给乙210斤粮食,那么N%为多
不属于第三次科技革命新特点的选项是()。
ThedebateastowhethertheInternetorbooksareaboontoschooleducationisconductedonthesuppositionthatthemediumis
A、Theyareconfused.B、Theyareangry.C、Theyarehappy.D、Theyareworried.C
最新回复
(
0
)