首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang 20 Tsinghua。 注意:只能在函数address_change的
请打开考生文件夹下的解决方案文件proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang 20 Tsinghua。 注意:只能在函数address_change的
admin
2021-02-22
72
问题
请打开考生文件夹下的解决方案文件proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang 20 Tsinghua。
注意:只能在函数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"proj3.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[] address;
//*******333*******
//*******666*******
}
void Person::info display(){
cout<
<
if(addresS!=NULL)
cout<
cout<
}
Person::~Person(){
if(address!=NULL)
delete[]address ;
}
void msin()
PerSon p1;
p1.name change("Zhang");
p1.age change(20);
p1.address_change("Tsing-hua University");
p1.address~change("Tsing-hua");
p1.info_di splay();
writeToFiie(" ");
}
选项
答案
1 address:new char[strlen(add) +1]; //给类成员变量动态分配空间 2 strcpy(address,_add); //把字符串add复制给address
解析
函数address_change(chat*_add)的功能是地址修改,也就是说通过该函数把类的地址修改为add字符串。类的私有成员address是字符指针,因此首先要给address分配空间,通过new语句来实现:address=newchar[strlen(add)+1];。接下来就是要复制字符串,使用系统函数strcpy,其用法为strcpy(参数1,参数2),将参数2的内容复制到参数1中。
转载请注明原文地址:https://kaotiyun.com/show/bBfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在公有派生时,派生类中定义的成员函数只能访问原基类的()。
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程文件pmj3。本题创建一个小型字符串类,字符串长度不超过100。程序文件包括proj3.h、proj3.cpp、writeToFile.obj。补充完成重载赋值运算符函数,完成深复制功能。
请使用VC6或使用【答题】菜单打开考生文件夹projl下的工程proj1。该工程中包含程序文件main.cpp,其中有类CDate(“日期”)和主函数main的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1。其中有线段类Line的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应该是:Endpoint1=
设一棵树的度为3,共有27个结点,其中度为3,2,0的结点数分别为4,1,10。该树中度为1的结点数为()。
在软件生命周期中,能准确确定软件系统必须做什么和必须具备哪些功能的阶段是
下列关于模板的叙述中,错误的是()。
结构化程序设计中,下面对goto语句使用描述正确的是()。
有如下类定义:ciassA{char*a;public:A():a(0){}A(char*aa){∥把aa所指字符串拷贝到a所指向的存储空间a=___;strcpy(a,aa
算法的空间复杂度是指()。
随机试题
由于会计分期假设才形成的会计处理方法有()。
中暑痉挛时最常发生肌肉痉挛的部位是()
按劳分配主体地位的决定条件是
转运外源性甘油三酯和胆固醇的是转运内源性甘油三酯和胆固醇的是
急性心肌梗死的处理中不正确的是
(2012年国家司法考试真题)甲不履行仲裁裁决,乙向法院申请执行。甲拟提出不予执行的申请并提出下列证据证明仲裁裁决应不予执行。针对下列哪一选项,法院可裁定驳回甲的申请?()
下列关于合伙型股权投资基金的入伙,表述正确的是()。
某工业企业2016年度主营业务收入2000万元,主营业务成本1755万元,其他业务收入10万元,其他业务成本5万元,财务费用5万元,营业外收入10万元,营业外支出5万元,所得税税率为25%。假定不考虑其他因素,该企业2016年度的净利润应为()
Thateveryone’stoobusythesedaysisacliche.Butonespecificcomplaintismadeespeciallymournfully:There’sneveranytim
AlthoughtherearemanyskillfulBraillereaders,thousandsofotherblindpeoplefinditdifficulttolearnthatsystem.Theya
最新回复
(
0
)