⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ep4_6.cpp

📁 这里有大量的c语言习题呢!真的是题海哦
💻 CPP
字号:
/* 4.6设计一个学校在册人员类(Person)。数据成员包括:身份证号(IdPerson),姓
名(Name),性别(Sex),生日(Birthday)和家庭住址(HomeAddress)。成员函数包
括人员信息的录入和显示。还包括构造函数与拷贝构造函数。设计一个合适的初始值。*/

#include<iostream>
#include<cstring>
using namespace std;

enum Tsex{mid,man,woman};
class Person{
	char IdPerson[19];			//身份证号,18位数字
	char Name[20];				//姓名
	Tsex Sex;				//性别
	int Birthday;				//生日,格式1986年8月18日写作19860818
	char HomeAddress[50];		//家庭地址
public:
	Person(char *,char *,Tsex,int,char *);
	Person(Person &);
	Person();
	~Person();
	void PrintPersonInfo();
	void inputPerson();
	//其他接口函数
};
Person::Person(char *id,char *name,Tsex sex,int birthday,char *homeadd){
	cout<<"构造Person"<<endl;
	strcpy(IdPerson,id);
	strcpy(Name,name);
	Sex=sex;
	Birthday=birthday;
	strcpy(HomeAddress,homeadd);
}
Person::Person(){
	cout<<"缺省构造Person"<<endl;
	IdPerson[0]='\0';Name[0]='\0';Sex=mid;
	Birthday=0;HomeAddress[0]='\0';
}
Person::Person(Person & Ps){
	cout<<"拷贝构造Person"<<endl;
	strcpy(IdPerson,Ps.IdPerson);
	strcpy(Name,Ps.Name);
	Sex=Ps.Sex;
	Birthday=Ps.Birthday;
	strcpy(HomeAddress,Ps.HomeAddress);
}
Person::~Person(){
	cout<<"析构Person"<<endl;
}
void Person::inputPerson(){
	char ch;
	cout<<"请输入身份证号,18位数字:"<<endl;
	cin.getline(IdPerson,19);
	cout<<"请输入姓名:"<<endl;
	cin.getline(Name,20);
	cout<<"请输入性别m或w:"<<endl;
	cin>>ch;
	if(ch=='m') Sex=man;
	else Sex=woman;
	cout<<"请输入生日,格式1986年8月18日写作19860818:"<<endl;
	cin>>Birthday;
	cin.get();   //吸收回车符,否则地址输不进去
	cout<<"请输入地址:"<<endl;
	cin.getline(HomeAddress,50);
}
void Person::PrintPersonInfo(){
	int i;
	cout<<"身份证号:"<<IdPerson<<'\n'<<"姓名:"<<Name<<'\n'<<"性别:";
	if(Sex==man)cout<<"男"<<'\n';
	else if(Sex==woman)cout<<"女"<<'\n';
	     else cout<<" "<<'\n';
	cout<<"出生年月日:";
	i=Birthday;
	cout<<i/10000<<"年";
	i=i%10000;
	cout<<i/100<<"月"<<i%100<<"日"<<'\n'<<"家庭住址:"<<HomeAddress<<'\n';
}

int main(){
	Person Ps1("320102811226161","朱海鹏",man,19811226,"南京市黄浦路1号"),Ps2(Ps1),Ps3;
	Ps1.PrintPersonInfo();
	Ps2.PrintPersonInfo();
	Ps3.inputPerson();
	Ps3.PrintPersonInfo();
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -