首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用菜单命令或直接用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
39
问题
请使用菜单命令或直接用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全国计算机二级
相关试题推荐
下面类的声明中的几个语句,正确的是(设定语句是主函数中的语句)()。classTestClass{private:intdata;public:TestClass(intg_data)
执行下列语句后,变量n的值是______。intn=0;for(inti=1;i<=3;i++)for(intj=1;j<<=i;j++)n++;
A、 B、 C、 D、 D选项A)、B)、C)叙述的都是链式存储结构具有的特点,顺序结构每个结点只包含自身的信息域,且逻辑上相邻的结点物理上也是相邻的。因此其插入、删除运算操作木方便,需移动大量的结点。
函数Min的功能是返回具有n个元素的数组array中的最小值。请将横线处的缺失部分补充完整,使得程序的输出结果为1.24。#include<iostream>usingnamespacestd;template<typename
下列程序的输出结果为12.324.6,请将横线处的缺失部分补充完整。#include<iostream>usingnamespacestd;classBase{public:Base(intA):id
已知类Ben中将二元运算符“/”,重载为友元函数,若c1、c2是Ben的两个对象当使用运算符函数进行显式调用时,与表达式c1/c2等价的表示为______。
己知函数f的原型是“voidf(int*x,int&y);”,变量v1、v2的定义是“intv1,v2;”,下列调用语句中,正确的是()。A)f(v1,v2);B)f(v1,&v2);C)f(&v1,v2);D)f(
在对函数进行原型声明时,下列语法成分中,不需要的是()。A)函数返回类型B)函数参数列表C)函数名D)函数体
软件危机出现于60年代末,为了解决软件危机,人们提出了______的原理来设计软件,这就是软件工程诞生的基础。
随机试题
国内仲裁与涉外仲裁异同点的有关说法,下列表述中正确的是:()
财务分析应遵循的原则有()。
《中华人民共和国商业银行法》明确规定商业银行不得从事()。
(山西)已知等差数列{an}前n项和为Sn,a2=2,S5=15.求数列{an}的通项公式;
农民工的困境,表面上看是身份困境,实际上是公平正义规则不健全且运转不灵状态下的权利困境。解决这一难题,不妨从新型城镇化中找到一条渠道。虽说当前我国城镇化率已超过50%,但这种城镇化很大程度上是“低质城镇化”,人口城镇化和权利城镇化显然出现了脱钩。其中最有力
按资源分配方式可将外设分为()。
运输部门认为把车票价提高40%的方案必须执行,并对此做出解释:不可否认,这些费用的增加会加重公共汽车和地铁乘客的负担;但是,如果不加价,服务质量就会大幅度下降,其结果会丧失大量的乘客,而这是不能令人接受的。上文使用了以下哪种论证策略?
Devil,V8,Anal,Christ;theseareamongthebabynames【C1】______byNewZealand’sdepartmentofinternalaffairs,whorecently【C
A、In1981.B、In1982.C、In1984.D、In1994.C
Wehaveacrisisonourhands.Youmeanglobalwarming?Theworldeconomy?No,thedeclineofreading.Peoplearejustnotdoing
最新回复
(
0
)