首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang 20 TsinghHa。 注意:只能在函数ad
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang 20 TsinghHa。 注意:只能在函数ad
admin
2021-02-22
59
问题
请使用【答题】菜单命令或直接用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://kaotiyun.com/show/Wzfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:151注意:错误的语句在//*****error******的下面,修改该语句即可。#include/
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并使程序输出的结果为:Maxis7提示:max()数实现找出两个数中的最大值,并作为函数值返回。注意:错误的语句
有三个关系R、S和T如下:由关系R和S通过运算得到关系T,则所使用的运算为
有两个关系R和S如下:由关系R通过运算得到关系S,则所使用的运算为
已知数组arr的定义如下:intarr[5]={1,2,3,4,5};下列语句中输出结果不是2的是()。
软件系统总体结构图的作用是
代码编写阶段可进行的软件测试是
软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是
在下列模式中,能够给出数据库物理存储结构与物理存取方法的是
使用VC6打开考生文件夹proj3下的工程proj3,其中定义了一个字符串变量类StringVar。类成员的说明在程序注释中。请在//**********333**********和//*****666*****之间填写StringVar成员函数和友元函数
随机试题
在电子商务系统可能遭受的攻击中,从信道进行搭线窃听的方式被称为
在货币政策理论中,凯恩斯于1936年发表的《通论》中提出的政策主张是()
Fromchildhoodtooldage,wealluselanguageasameansofbroadeningourknowledgeofourselvesandtheworldaboutus.When
某CDC健康教育所主动对当地居民进行有关预防脑中风的宣传材料制作,这种需求评估为
A.五味消毒饮B.仙方活命饮C.黄连解毒汤D.犀角地黄汤E.清骨散疮疡内治,清血分热之常用方剂是()
下列哪一案件可以适用当事人和解的公诉案件诉讼程序?(2016年卷二41题,单选)
会计主体的经济活动与会计主体所有者的经济活动都必然影响所有者的经济利益。()
国家机关工作人员行使职权时违背法律授朽的宗旨,超越职权范围或者违反职权行使的程序,从而导致公共财产、国家和人民利益遭受重大损失的行为,应判处()。
所有好的评论家都喜欢格林在这次演讲中提到的每一个诗人。虽然格斯特是非常优秀的诗人,可是没有一个好的评论家喜欢他。根据以上陈述,可以得出以下哪项?
A、Itreceivesmorenutrientsthanitcanabsorb.B、Itbecomesoversaturatedwithwater.C、Itlosestheabilitytosupportinsect
最新回复
(
0
)