配对

#include<iostream>
#include<string>
using namespace std;
struct node{
	char name[10];
	struct node *next;
};
void Init(node *header_man,node *header_woman){
	int	n;	cin >> n;
	cout << "0代表女生,1代表男生" << endl;
	for(int i=0; i<n; ++i){
		bool flag;	cin >> flag;
		node *temp = (node*)malloc(sizeof(node));
		cin >> temp->name;
		temp->next = NULL;
		if(flag){
			node *t = header_man;
			while(t->next!=NULL){
				t = t->next;
			}
			t->next = temp;
		}
		else{
			node *t = header_woman;
			while(t->next!=NULL){
				t = t->next;
			}
			t->next = temp;
		}
	}
	cout << "存储完毕" << endl;
	return ;
}
void pop(node *header){
	node *t = header->next;
	cout << t->name << "	";
	header->next = t->next;
	return ;
}
int main(){
	node *header_man,*header_woman;
	header_man = (node*)malloc(sizeof(node));
	header_woman = (node*)malloc(sizeof(node));
	header_man->next = NULL;
	header_woman->next = NULL;
	Init(header_man,header_woman);
	cout << "下面开始配对" << endl;
	while(header_man->next!=NULL&&header_woman->next!=NULL){
		pop(header_man);
		pop(header_woman);
		cout << endl;
	} 
	if(header_man->next!=NULL){
		cout << "他还没配对呢!!!" << header_man->next->name << endl;
	}
	else if(header_woman->next!=NULL){
		cout << "他还没配对呢!!!" << header_woman->next->name << endl;
	}
	else{
		cout << "完全配对,耶耶耶!!!" << endl; 
	}
	return 0;
}
发布了16 篇原创文章 · 获赞 2 · 访问量 3894

猜你喜欢

转载自blog.csdn.net/lang_a/article/details/84348337