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

📄 editmember.cpp

📁 家谱用于记录某家族历代家族成员的情况与关系。现编制一个家谱资料管理软件
💻 CPP
字号:
#include"DefineStruct.h"
void EditHeight(int ID,family * member)//修改身高函数
{
	cout<<member[ID].name<<"的身高为"<<member[ID].height<<"cm"<<endl
		<<"请输入你想修改的新值:";

	cin>>member[ID].height;

	cout<<member[ID].name<<"的身高修改为"<<member[ID].height<<"cm"<<endl;

	return;
};

void EditDeathDate(int ID,family * member)//修改死亡日期函数
{
	if(member[ID].DeathDate==0)
		cout<<"该成员尚未死亡"<<endl;

	else 
	{
		cout<<member[ID].name<<"的死亡日期为:";

		ShowDate(member[ID].DeathDate);
	}

a:	cout<<"请输入你想修改的值:"
		<<"1,设置该成员未死亡\t"
		<<"2,设置该成员的死亡日期\t"
		<<"0,返回\n";

	char c;//用于记录选择

	cin>>c;
	
	switch(c)
	{
	case '1':member[ID].DeathDate=0;break;

	case '2':
		{
			int y;

			cout<<"\n年?";

			cin>>y;

			int m;

			cout<<"月?";

			cin>>m;

			int d;

			cout<<"日?";

			cin>>d;

			member[ID].DeathDate=y*10000+m*100+d;//尚欠加入判断年月日有效值的函数

			break;
		}

	case '0':return;

	default:cout<<"输入错误"<<endl; goto a;
	}

	if(member[ID].DeathDate==0)
		cout<<"该成员尚未死亡"<<endl;

	else 
	{
		cout<<member[ID].name<<"的死亡日期为:";

		ShowDate(member[ID].DeathDate);
	}
};

void EditSchool(int ID,family * member)//修改学历函数
{
	cout<<member[ID].name<<"的学历为"<<member[ID].schooling<<endl
		<<"请输入你想修改的新值:";

	cin>>member[ID].height;

	cout<<member[ID].name<<"的学历修改为"<<member[ID].height<<endl;

	return;
}

void EditOccupation(int ID,family * member)//修改职业函数
{
	cout<<member[ID].name<<"的职业为"<<member[ID].occupation<<endl
		<<"请输入你想修改的新值:";

	cin>>member[ID].occupation;

	cout<<member[ID].name<<"的职业修改为"<<member[ID].occupation<<endl;

	return;
}

void EditTitle(int ID,family * member)//修改职称函数
{
	cout<<member[ID].name<<"的职称为"<<member[ID].title<<endl
		<<"请输入你想修改的新值:";

	cin>>member[ID].title;

	cout<<member[ID].name<<"的职称修改为"<<member[ID].title<<endl;

	return;
}
void EditMember(family * &member,int &total)
{
	ShowAllName(member ,total);
	//一个显示全部成员资料的函数或者显示所有成员姓名,甚至是关系树
	cout<<"请输入要修改的成员姓名:";

	char name[10];

	cin>>name;

	int ID=FindName(name,member,total);

	if(ID==0){cout<<"没有此人\n"; return;}

	show(ID,member,total);//输出对应ID的资料

c:	cout<<"请输入你需要修改的选项:\n"
		<<"1,修改身高\t"
		<<"2,修改死亡日期\t"
		<<"3,修改学历\t"
		<<"4,修改职业\t"
		<<"5,修改职称\t"
		<<"0,退出\n";

	int choice; //用于选择

	cin>>choice;

	switch(choice)//里面几个Edit函数尚未定义	
	{
	case 1: EditHeight(ID,member);break;

	case 2: EditDeathDate(ID,member);break;

	case 3: EditSchool(ID,member);break;

	case 4: EditOccupation(ID,member);break;

	case 5: EditTitle(ID,member);break;

	case 0: return;

	default:cout<<"输入错误,请再输入\n";goto c;
	}
}//EditMember完,不过尚有很多地方需要完善,譬如,修改成员关系那类型的修改,牵连到很多东西,迟一点再补回去

⌨️ 快捷键说明

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