showinrelation.cpp

来自「家谱用于记录某家族历代家族成员的情况与关系。现编制一个家谱资料管理软件」· C++ 代码 · 共 69 行

CPP
69
字号
#include "DefineStruct.h"
void ShowInRelation(int ID,family * member,int total)
{//尚未美化界面
	cout<<member[ID].name<<"的近亲关系"<<"\n*************"<<endl;

	if(member[ID].DadID!=0) cout<<"父亲:"<<member[member[ID].DadID].name<<"\t";

	if(member[ID].MumID!=0) cout<<"母亲:"<<member[member[ID].MumID].name;

	cout<<endl;

	if(member[ID].LoverID!=0) cout<<"配偶:"<<member[member[ID].LoverID].name<<"\n";

	int TID;//用于临时记录ID

	if(member[ID].DadID==0)
	{
		if(member[ID].MumID==0) goto a;
		else TID=member[ID].MumID;
	}
	else TID=member[ID].DadID;

	if(member[TID].ChildID!=ID)
	{
		cout<<"兄弟姐妹:";

		TID=member[member[ID].DadID].ChildID;

		while(TID!=0)
		{
			if(TID!=ID) cout<<member[TID].name<<"\t";

			TID=member[TID].BrotherID;
		}
	}
	else
	{
		TID=member[ID].BrotherID;

		if(TID!=0) cout<<"兄弟姐妹:";

		while(TID!=0)
		{
			cout<<member[TID].name<<"\t";

			TID=member[TID].BrotherID;
		}
	}
	cout<<endl;

a:	if(member[ID].ChildID!=0)
	{
		cout<<"子女:";

		cout<<member[member[ID].ChildID].name<<"\t";

		TID=member[member[ID].ChildID].BrotherID;

		while(TID!=0)
		{
			cout<<member[TID].name<<"\t";

			TID=member[TID].BrotherID;
		}
	}

	cout<<endl;
}

⌨️ 快捷键说明

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