首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang 20 TsinghHa。 注意:只能在函数ad
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang 20 TsinghHa。 注意:只能在函数ad
admin
2021-02-22
78
问题
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang 20 TsinghHa。
注意:只能在函数address_change的“//********333*
********”和“//**********666********”之间填入若干语句,不要改动程序中的其他内容。
程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序中调用。
//proj3.h
#include
#include
using namespace std;
class Person{
char name[20];
int age;
char* address;
public:
Person(){age=0;address=0;)
void name_change(char*_name);
//名字修改函数
void age_change(int_age);
//年龄修改函数
void address_change(char*_add);
//地址修改函数
void info_display();
//人员信息显示
一Person();
//析构函数
};
void writeToFile(const char*path);
proj3.cpp
#include
#include
#include”proj 3.h”
using namespace std;
void Person::name change(char*
_name)
{
strcpy(name,_name);
}
void Person::age_change(int_age)
{
age=_age;
}
void Person::address_change(char*_
add)
{
if(address!=NULL)delete[]ad-
dress;
//********333********
//********666********
}
void Person::info_display(){
cout<
<
if(address!=NULL)
cout<
cout<
}
Person::一Person(){
if(addresS!=NULL)
delete[]address;
}
void main()
{
Person p1;
p1.name change(”Zhang”);
p1.age_change(20);
p1.address_change(”Tsinghua Uni-
versity”);
p1.address_change(”Tsinghua”);
p1.info_display();
writeToFile(””);
}
选项
答案
address=new char[strlen(add)+ 1]; //给类成员变量动态分配空间 strcpy(address,_add); //把字符串add复制给address
解析
函数address_change(char*_add)的功能是地址修改,也就是说通过该函数把类的地址修改为add字符串。类的私有成员address是字符指针,因此首先要给address分配空间,通过new语句来实现:address=new char[strlen(_add)+1];。接下来就是要复制字符串,使用系统函数strcpy,其用法为strcpy(参数1,参数2),将参数2的内容复制到参数1中。
转载请注明原文地址:https://www.kaotiyun.com/show/Wzfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为:sizeof(str1)=5sizeof(str2)=10sizeof(str3)=1
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:(1)完成构造函数的定义,使得数据成员变量filename和contex为空,内容长度FileLength为0。
有如下程序:#include<iostream>usingnamespacestd;classA{public:A(){cout<<’’A’’;}};classB{public:B
对于语句cout<<endl<<x中的各个组成部分,下列叙述中错误的是()。
有如下模板声明:template<typenameT1,typenameT2>ClaSSA;下列声明中,与上述声明不等价的是()。
有如下类定义:classPoint{intx_,y_;public:Point():x_(0),y_(0){}Point(intx,inty=0):x_(x),y_(y){}};
软件生命周期可分为定义阶段、开发阶段和维护阶段,下面属于定义阶段任务的是
下列关于模板的描述中,错误的是()。
随机试题
煤、石油、天然气是化学工业的基本原料。()
下列选项中,不属于谈判人员素质结构的是()
______是指因对外销售产品或材料、供应劳务及其他原因,应向购货单位或接受劳务单位及其他单位收取的款项,包括______、______、______等。
水生生态系统的食物链一般比陆地生态系统的食物链长。[]
骨折复位的标准是(1),(2)。
管理的最主要因素和管理的核心是
某公司财务部拟组织本系统会计职业道德培训。为了提高培训工作的针对性,财会部就会计职业道德概念、会计职业道德与会计法律制度的关系、会计职业道德规范的内容等问题,与4名会计人员召开了一次座谈会。4个人分别就相关问题谈了自己的看法。要求:根据上述资料,回答
已知抛物线y=一+1,下列说法正确的是().
科学家在地面实验室的实验表明,一些小分子物质经紫外线照射可以生成氨基酸。光谱分析表明,星际空间存在着这样的小分子物质。科学家还利用卫星进行了有关实验,这样的小分子物质在太阳紫外线的照射下生成了氨基酸等大分子。因此,一些科学家认为彗星在空间运行时会吸附上这些
邓小平理论的历史地位体现在它是()
最新回复
(
0
)