首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang 20 Tsinghua。 注意:只能在函数address_change的
请打开考生文件夹下的解决方案文件proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang 20 Tsinghua。 注意:只能在函数address_change的
admin
2021-02-22
54
问题
请打开考生文件夹下的解决方案文件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全国计算机二级
相关试题推荐
必须用一对大括号括起来的程序段是()。
有如下程序:#includeusingnamespacestd;classBase{public:voidfun1(){cout
下列程序的执行结果为()。#includevoidmain(){inta=3,b=0;int*p=&a;b=+a++:cout
下列关于new和delete运算符的叙述中,错误的是()。
请使用VC6或使用【答题】菜单打开考生文件夹pmj2下的工程proj2,此工程包含有一个源程序文件proj2.cpp,其中定义了Stack类和ArrayStaek类。Stack是一个用于表示数据结构“栈”的类,栈中的元素是字符型数据。Stack
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,此工程中包含一个源程序文件main.cpp,其中有类Book(“书”)和主函数main的定义。程序中位于每个“//ERROR****found****”下的语句行有错误,请加以改正。
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,其中有点类Point和线段类Line和主函数main的定义,程序中位于每个“//ERROR****found****”之的一行语句有错误,请加以改正。改正后程序的输出应为:
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程文件proj3。本题创建一个小型字符串类,字符串长度不超过100。程序文件包括proj3.h、proj3.cpp、writeToFile.obj。补充完成重载赋值运算符函数,完成深复制功能。
在数据库管理技术的发展中,数据独立性最高的是()。
算法的空间复杂度是指()。
随机试题
下列思想家同属儒家学派的是()。
属于大柴胡汤组成的是属于蒿芩清胆汤组成的是
患者,男,57岁。突发意识障碍,血压180/110mmHg,头痛,呕吐,出现右侧肢体偏瘫,脑CT示脑内有高密度区。患者诊断为
能直接作用于体温调节中枢的物质是
下列有关部门预算表述有误的是()。
多品牌策略是市场营销中品牌策略的一种,即同一公司的主要产品以多个不同的品牌在市场上销售,各品牌的同类商品往往是不同质的,或者不同的品牌占据不同的细分市场或不同的地理市场区域。根据上述定义,下列选项属于多品牌策略的是()。
Onedaywhileagirlwaswalkinginthewoodsshefoundtwostarvingsongbirds.Shetookthemhomeandputtheminasmall【C11】_
海象生活在海里,但海象不是鱼。那么下列表述正确的是()。
某企业3个月后需用美元支付200万欧元进口贷款,预测汇率会有大幅度变动,采用汇期权交易保值。已经即期汇率为$1=一$1.0100;期权价1=$0.0338;佣金占合同金额0.5%,采用欧式期权,请问3个月后市场汇率为$1=0.8500情况下该企业应如
已知数组arr的定义如下:intarr[5]={1,2,3,4,5};下列语句中输出结果不是3的是
最新回复
(
0
)