首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用菜单命令或直接用VC6打开考生文件夹下的工程prj03。请完善下列程序,实现一个Number类。Add函数计算2个Number类对象之和,并将和作为Number对象返回。这2个Number对象中各包含一个用字符串表示的10进制正整数,均不超过int的
请使用菜单命令或直接用VC6打开考生文件夹下的工程prj03。请完善下列程序,实现一个Number类。Add函数计算2个Number类对象之和,并将和作为Number对象返回。这2个Number对象中各包含一个用字符串表示的10进制正整数,均不超过int的
admin
2019-06-05
31
问题
请使用菜单命令或直接用VC6打开考生文件夹下的工程prj03。请完善下列程序,实现一个Number类。Add函数计算2个Number类对象之和,并将和作为Number对象返回。这2个Number对象中各包含一个用字符串表示的10进制正整数,均不超过int的表示范围。在main函数中给出了一组测试数据,使用这组数据进行测试时程序的输出应该是:100
注意:只需在//**********333**********//**********666**********之间填入所编写的若干语句,不要改动程
序中的其他内容。
#include
#include
#include
#include”proj 3.h”
using namespace std;
Number::Number(char木n){
num=new char[strlen(n)+1];
strcpy(num,n);
}
Number::Number(Number&n){
num=new char[strlen(n.num)+1];
strcpy(num,n.num);
}
Number::Number(int n){
char*tmp=new char[30];
itoa(n,tmp,i0); //函数itoa的功能是将n转换为字符串,存放于tmp指向的敷组中
num=new char[strlen(tmp)+1];
strcpy(num,tmp);
}
Number::一Number(){
if(num)
delete[]num;
}
Number Number::Add(Number n)f
//**********333**********
}
//**********666**********
}
int main(){
Number numl(“32”);
Number num2(“68”);
Number&num3=numl.Add(hum2);
cout<
writeToFile(“C:\test V”);
return 0;
}
//proj 3 t proj 3.h
clasS Number{
private:
char*num;//具体数字,num[0]表示最高位的数
public:
一Number();
Number(char*n);
Number(Number&n);
Number(int n);
Number Add(Number n);
char*GetNum()(return num;}
};
void writeToFile(const char*path);
选项
答案
int i=atoi(hum); int j=atoi(n.GetNum()); return Number(i+j);
解析
本题考查的是Number类,其中涉及C语言的库函数、构造函数的使用、成员函数的使用。
【解题思路】
主要考查考生对库函数、对象成员和构造函数使用的掌握情况,函数Add的功能是将函数参数n与自身相加,返回相加后的Number对象,Number类中成员字符串。aura是用来表示十进制的整数,所以将两个Number相加需要首先将字符串aura转化为整数,这里需要使用库函数atoi,将调用对象的hum和对象n的aura转化为十进制整数i,j,在转化对象n的aura成员时,由于hum是Number类的私有成员,所以不能直接使用,而应该通过成员函数GetNum()返回num;得到十进制数i、j后,再用i与j的和构造成Number对象,所以需要使用Number的参数为整数的构造函数,即Number’(int i),构造Number对象后返回。
转载请注明原文地址:https://kaotiyun.com/show/d18p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面关于常成员函数的说法中正确的是()。A)常成员函数不能修改任何的数据成员B)常成员函数只能修改一般的数据成员C)常成员函数只能修改常数据成员D)常成员函数只能通过常对象来调用
下列程序执行后,输出的结果是()。intx=-5,y=0;while(++x)y++;cout<<y<<end1;A)1B)2C)4D)5
执行下列语句后,变量n的值是______。intn=0;for(inti=1;i<=3;i++)for(intj=1;j<<=i;j++)n++;
下列程序的输出结果为012,请根据注释将横线处的缺失部分补充完整。#include<iostream>usingnamespacestd;classTest{public:Test(intA){data=a
有如下语句序列:intx=-10;while(++x){}运行时while循环体的执行次数为______。
实体完整性约束要求关系数据库中元组的______属性值不能为空。
Windows环境下,由C++源程序文件编译而成的目标文件的扩展名是()。A)cppB)exeC)objD)lik
当派生类从一个基类保护继承时,基类中的一些成员在派生类中成为保护成员,这些成员在基类中原有的访问属性是()。A)任何B)公有或保护C)保护或私有D)私有
已知类Ben中将二元运算符“/”,重载为友元函数,若c1、c2是Ben的两个对象当使用运算符函数进行显式调用时,与表达式c1/c2等价的表示为______。
随机试题
简述谈判的方法及有效谈判的原则。
男性,44岁,有咳嗽,咳痰史5年,伴喘息,入院前3天因受寒咳嗽,喘加重,咳黄痰入院,入院时查体,桶状胸,叩诊过清音,肺肝境界右锁中线第7肋间,双肺干、湿啰音及散在哮鸣音,肺功能:FEV1/FVC为56%,MVV60%,VC降低,RV/TLC为43%。住院第
如下图所示,半径为R的圆盘以匀角速度ω沿水平滚动而无滑动,AB杆的A端与圆盘边缘铰接,其B端在水平面上滑动,在图示位置时,AB杆B端的加速度aB大小为()。
下列关于会计循环的表述,正确的有()。
阅读下来材料,按要求完成任务。材料一:《普通高中化学课程标准(实验)》内容标准:认识化石燃料综合利用的意义,了解甲烷、乙烯、苯等的主要性质,认识乙烯、氯乙烯、苯的衍生物等在化工生产中的重要作用。探究建议:实验探究乙烯、乙醇、乙酸的主要化学性质。
让你组织一个大型征文活动,但是大家积极性不高。你将如何准备?
新中国成立以来,在党中央、中央军委领导下,国防建设取得了很大成就,逐步建立起了有中国特色的()。
下列内容不属于书院产生原因的是()
学习动机
Wheredoestheconversationprobablytakeplace?
最新回复
(
0
)