首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用菜单命令或直接用VC6打开考生文件夹下的工程prj03。请完善下列程序,实现一个Number类。Add函数计算2个Number类对象之和,并将和作为Number对象返回。这2个Number对象中各包含一个用字符串表示的10进制正整数,均不超过int的
请使用菜单命令或直接用VC6打开考生文件夹下的工程prj03。请完善下列程序,实现一个Number类。Add函数计算2个Number类对象之和,并将和作为Number对象返回。这2个Number对象中各包含一个用字符串表示的10进制正整数,均不超过int的
admin
2021-06-10
44
问题
请使用菜单命令或直接用VC6打开考生文件夹下的工程prj03。请完善下列程序,实现一个Number类。Add函数计算2个Number类对象之和,并将和作为Number对象返回。这2个Number对象中各包含一个用字符串表示的10进制正整数,均不超过int的表示范围。在main函数中给出了一组测试数据,使用这组数据进行测试时程序的输出应该是:100
注意:只需在//********333********和//********666********之间填人所编写的若干语句,不要改动程序中的其他内容。
1 #include
2 #include
3 #include
4 #include"proj3.h"
5 using namespace std;
6 Number::Number(char*n){
7 num=new char[strlen(n)+1];
8 strcpy(num,n);
9 }
i0 Number::Number(Number&n){
11 num=new char[strlen(n.num)+1];
12 strcpy(num,n.num);
13 }
14 Number::Number(int n){
15 char*tmp=new char[30];
16 itoa(n,tmp,10); //函数itoa的功能是将n转换为字符串,存放于tmp指向的数组中
17 num=new char[strlen(tmp)+1];
18 strcpy(num,tmp);
19 }
20 Number::~Number(){
21 if(num)
22 delete[]num;
23 }
24 Number Number::Add(Number n){
25 //****333****
26
27
28 //*******666*******
29 }
30 int main(){
31 Number numl("32");
32 Number num2("68");
33 Number&num3=numl.Add(nurn2);
34 cout<
35 writeToFile("c:\test\");
36 return 0;
37 }
1 //proj3\proj3.h
2 class Number {
3 private:
4 char*num;//具体数字,num[0]表示最高位的数
5 public:
6 ~Number();
7 Number(char*n);
8 Number(Number&n);
9 Number(int n);
10 Number Add(Number n);
11 char*GetNum(){return num;}
12 };
13 void writeToFile(const char*path);
选项
答案
1 int i=atoi(hum); 2 int j=atoi(n.GetNum()); 3 retum Numt)er(i+i);
解析
主要考查考生对库函数、对象成员和构造函数使用的掌握情况,函数Add的功能是将函数参数n与自身相加,返回相加后的Number对象,Number类中成员字符串num是用来表示十进制的整数,所以将两个Number相加需要首先将字符串num转化为整数,这里需要使用库函数atoi,将调用对象的num和对象n的num转化为十进制整数i,j,在转化对象n的num成员时,由于num是Number类的私有成员,所以不能直接使用,而应该通过成员函数GetNum()返回num;得到十进制数i、j后,再用i与j的和构造成Number对象,所以需要使用Number的参数为整数的构造函数,即Number(int i),构造Number对象后返回。
转载请注明原文地址:https://kaotiyun.com/show/l0fp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若字符指针P所指向的字符串为"abcdefg",在执行语句()。char*ap=newchar[strlen(p)+1];之后,ap指向的字符数组的元素个数为
有三个关系R、S和T如下:则由关系R和S得到关系T的操作是()。
如果不使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问从基类继承的成员。有如下程序,没有使用多态机制。#includeusingnamespacestd;classBase{inta,b;
下列选项中不属于结构化程序设计原则的是()。
下列叙述中正确的是
下列有关继承和派生的叙述中,正确的是()。
请使用菜单命令或直接用VC6打开考生文件夹下的工程prj03。请完善下列程序,实现一个Number类。Add函数计算2个Number类对象之和,并将和作为Number对象返回。这2个Number对象中各包含一个用字符串表示的10进制正整数,均不超过int的
下列方法中,属于白盒法设计测试用例的方法的是()。
已知有数组定义chara[3][4];下列表达式中错误的是()。
随机试题
关于胃十二指肠溃疡病手术治疗的叙述,下列哪些是正确的
A.普通型偏头痛B.典型偏头痛C.丛集性头痛D.紧张性头痛E.痛性眼肌麻痹男性。25岁。每年秋季常频繁出现夜间左侧眼眶部剧烈的非搏动性头痛,难忍,一般持续半小时。可能的诊断是
不属于女性外生殖器的是
下述心绞痛属于不稳定型心绞痛,除了
甲有件玉器,欲转让,与乙签订合同,约好10日后交货付款。第二天,丙见该玉器,愿以更高的价格购买,甲遂与丙签订合同,丙当即支付了80%的价款,约好3天后交货。第三天,甲又与丁汀立合同,将该玉器卖给丁,并当场交付,但丁仅支付了30%的价款。后乙、丙均要求甲履行
“五禽戏”是古代的一种体操,模仿虎、鹿、熊、猿、鸟等动物体态进行运动,以实现强身健体的目的。它的创造者为古代名医:
拉丁美洲曾深受西方殖民主义之害,这形成了拉美人民在苦难巾反思和抗争的传统,并铸就了_________的精神,正是这种精神气质使拉美电影在世界影坛_________。填入划横线部分最恰当的一项是:
DirectionsforQuantitativeComparisonQuestions:Someofthefollowingquestionsgiveyoutwoquantities,oneinColumnAando
Differentpeoplechoosedifferentjobsaccordingtotheirinterestsandability.Everyone’sidealjobistotallydifferent.W
BythetimetheOlympicsbegininAtlantathissummer,thebusinessworldwillhavespentmorethan$1billiontolinktheirnam
最新回复
(
0
)