首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang 20 Tsinghua。 注意:只能在函数ad
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang 20 Tsinghua。 注意:只能在函数ad
admin
2017-02-21
34
问题
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang 20 Tsinghua。
注意:只能在函数address_change的“//********333********”和“********666********”之间填入若干语句,不要改动程序中的其他内容。
程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序中调用。
//proj3.h
#include<iostream>
#include<string>
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 wrriteToFile(const char * path);
proj3.cpp
#include<iostream>
#include<string>
#include"proj3.h"
using namespace std;
void Person∷name change(char * _name 1
{
strcpy(name, name);
}
void PeEson∷age_change(int_age)
{
age=_age;
}
void PeEson∷address_change
(char *_add)
{
if(address!=NULL)delete[]address;
//********333********
//********666********
}
void Person∷info_display(){
cout<<name<<’\t’
<<age<<’\t’;
if(address!=NULL)
cout<<address<<end1;
tout<<end1;
}
Person∷~PeEson(){
if(address!=NULL)
delete[]address;
}
void main()
{
PeEson p1;
p1.name_change("Zhang");
p1.age_change(20);
p1.address_change("Tsinghua University");
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=newchar[strlen(_add)+1];。接下来就是要复制字符串,使用系统函数strcpy,其用法为strcpy(参数1,参数2),将参数2的内容复制到参数1中。
转载请注明原文地址:https://kaotiyun.com/show/I6Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面程序的执行结果是#include"iostream.h"voidmain(){int*p,r;p=newint;*p=20;r=s
下列叙述中,正确的是
需求分析中开发入员要从用户那里了解
关于类和对象描述错误的是
判断char型变量c是否为小写字母的正确表达式是
设有如下说明 typedef struct {int n;char c;double x;}STD; 则有以下选项,能正确定义结构体数组并赋初值的语句是
以下选项中合法的实型常数是
下列程序时类D代码段出现编译错误,原因是【 】。#include<iostream.h>classA{public:A(charc){cout<<"A’sconstructor."<<c<<endl
若有以下定义和语句 int a=4,b=3,*p, *q, *w; p=&a; q=&b; w=q; q=NULL; 则以下选项中错误的语句是
如果有以下定义及初始化:inta=3,*p=&a;则由此可以推断,*p的值是()。
随机试题
患者,男性,26岁,畏寒,继之发热,体温最高达39℃,伴头痛,3小时后退热,退热后体可、食欲好,每2~3天发热1次。明确诊断还需进行哪些检查
医生为了帮助病人戒烟,在病人每次吸烟后给他服用某种能引起恶心、呕吐的药物,这样反复几次以后,病人就不再想吸烟了。这样的治疗方法称为
房地产区域营销理念应包含()三个层次。
资产、负债和_______三项会计要素表现资金运动的相对静止状态,即反映企业的财务状况;_______、费用和利润三项会计要素表现资金运动的显著变动状态,即反映企业的经营成果。
根据《中华人民共和国物权法》,处分按份共有的财产,应当经()共有人同意,共有人另有约定的除外。
一、教材分析本课是《信息技术》第二册第一单元动画制作第一课:种子发芽了。主要介绍了动画的原理、传统动画制作与电脑动画制作、Flash软件基础知识和逐帧动画的制作方法。二、学生分析本节课的教学对象是八年级学生,是开学以来的第一节正式课。对于学生来说,个
出租车在开始10千米以内收费10.4元,以后每走1千米,收费1.6元,请问走20千米需收多少钱?()
In2013,foodcriticandwriterHanniRuetzlertookatasteoutofadishcostingmorethan$300,000andremarkedhowitwas"cl
决策支持系统(DSS)的理论核心是决策模式理论,提出决策模式理论的是著名科学家?
TopicDigitalReadingorTraditionalReading?Forthispart,youareallowed30minutestowriteashortessay-entitledDigit
最新回复
(
0
)