目前已实现的功能有
1.注册账号。
2.登录账号。
3.找回密码。
4.获取密码。
5.注册密码。
6.退出系统。
7.初始化的菜单界面。
8.录入之前已经保存的账号数据。
9.录入之前已经保存的活动数据。
10.保存活动数据。
11.保存账号数据。
12.创建活动
13.查看已创建的活动
14.查看已加入的活动
15.发表评论
16.查看所有活动
17.加入活动
18.删除活动
19.模糊查询
/----------------------------------
已修复可见bug,欢迎大家在评论区对bug留言
#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<ctype.h>
#include<limits>
#include<cmath>
#include<algorithm>
#include<stdlib.h>
#include<malloc.h>
#include<queue>
#include<list>
#include<vector>
#include<stack>
#include<time.h>
#include<conio.h>
#include <fstream>
#define ll long long
using namespace std;
typedef struct User//定义一个用户信息结构体
{
char user_ID[20],user_password[20];
char secret_protection[3][20];
char join_activity_name[3][100],create_activity_name[3][100];
int join_activity_number=0,create_activity_number=0;
int cur;
} NODEX;
typedef struct Activity//定义一个活动信息结构体
{
char time[100];
char activity_name[500];
char commemt[100][3000];
int comment_cur=0;
int people_number=0;
int people_number_limit=0;
char content[5000];
char create_people[20];
char require[3000];
char location[300];
char member[100][20];
bool flag=1;
int link_cur;
} NODEY;
typedef struct load_user//用户信息
{
char user_ID[20],user_password[20];
char secret_protection[3][20];
char join_activity_name[3][100],create_activity_name[3][100];
int join_activity_number=0,create_activity_number=0;
struct load_user *next;
} load_user,*user_LinkList;
typedef struct load_Activity//活动信息
{
char time[100];
int people_number=0;
char activity_name[500];
char commemt[100][3000];
int comment_cur=0;
int people_number_limit=0;
char content[5000];
char create_people[20];
char require[3000];
char location[300];
char member[100][20];
struct load_Activity *next;
} load_Activity,*Activity_LinkList;
user_LinkList user_message;
Activity_LinkList Activity_message;
NODEX user[1000];
NODEY activity[1000];
user_LinkList p,q;
Activity_LinkList tail,temptail;
int ID_number=0;
int Activity_number=0;
int decrease=0;
void see_one_activity(int,int);//查看一个活动
bool vague_search(char str1[],char str2[]);//匹配
void search_activity(int);//查找活动
void delete_activity(int x);//删除活动
void join_activity(int);//加入活动
void activity_comment(int,int);//活动评论
void see_joined_activity(int);//查看加入的活动
void see_activity(int);//查看活动
void create_activity(int);//创建活动
void see_created_activity(int);//查看创建的活动
void put_user_message();//写入用户信息
void put_activity_message();//写入活动信息
void load_user_message();//加载用户信息
void load_activity_message();//加载活动信息
bool change_secret(int);//修改密码
bool search_secret();//找回密码
bool Login_ID();//登录账号
void create_secret_protection();//创建密保
bool Register();//注册账号
string getTime();
void menu_1();//界面菜单1
void menu_person(int x);//个人界面
void menu_end();//结束界面
int main()//主函数
{
load_user_message();
load_activity_message();
menu_1();
put_user_message();
put_activity_message();
return 0;
}
void see_one_activity(int x,int y)//查看单个活动
{
cout<<" 以下是您查询的活动"<<'\n';
cout<<"--------------------------------------------------------------------------------"<<'\n';
cout<<'\n';
cout<<"※------------------------------------------------------------------------------※"<<'\n';
cout<<'\n';
cout<<" 活动名称:"<<activity[y].activity_name<<'\n';
cout<<'\n';
cout<<" 活动时间:"<<activity[y].time<<'\n';
cout<<'\n';
cout<<" 活动地点:"<<activity[y].location<<'\n';
cout<<'\n';
cout<<" 人数限制:"<<activity[y].people_number_limit<<'\n';
cout<<'\n';
cout<<" 参加人数:"<<activity[y].people_number<<'\n';
cout<<'\n';
cout<<" 剩余人数"<<activity[y].people_number_limit-activity[y].people_number<<'\n';
cout<<'\n';
cout<<" 活动要求:"<<activity[y].require<<'\n';
cout<<'\n';
cout<<" 活动内容:"<<activity[y].content<<'\n';
cout<<'\n';
cout<<" 该创始人:"<<activity[y].create_people<<'\n';
cout<<'\n';
cout<<" 活动成员:";
cout<<"【"<<1<<"】"<<activity[y].member[0]<<'\n';
for(int i=1;i<activity[y].people_number;i++)
cout<<" 【"<<i+1<<"】"<<activity[y].member[i]<<'\n';
cout<<"※------------------------------------------------------------------------------※"<<'\n';
cout<<'\n';
cout<<" 请选择您接下里的操作"<<'\n';
cout<<'\n';
cout<<" ※※※※※※※※※※※※※※※※※※※※※※※※※"<<'\n';
cout<<" ※ ※"<<'\n';
cout<<" ※ 【1】加入该活动 ※"<<'\n';
cout<<" ※ ※"<<'\n';
cout<<" ※ 【2】返回个人界面 ※"<<'\n';
cout<<" ※ ※"<<'\n';
cout<<" ※※※※※※※※※※※※※※※※※※※※※※※※※"<<'\n';
cout<<" 您的操作是:";
int cur;
cin>>cur;
cout<<'\n';
cout<<" 请按任意键继续......"<<'\n';
getch();
if(cur==1)
{
if(activity[y].people_number_limit-activity[y].people_number>0)//若人数未满
{
//--------------------------------以下均为信息存储处理-------------------------------
user_LinkList tempa;
tempa=user_message->next;
while(tempa)
{
if(!strcmp(tempa->user_ID,user[x].user_ID))
break;
tempa=tempa->next;
}
strcpy(user[x].join_activity_name[user[x].join_activity_number],activity[y].activity_name);
strcpy(tempa->join_activity_name[tempa->join_activity_number],activity[y].activity_name);
tempa->join_activity_number++;
user[x].join_activity_number++;
Activity_LinkList tempnow;
tempnow=Activity_message->next;
while(tempnow)
{
if(!strcmp(tempnow->activity_name,activity[y].activity_name))
break;
tempnow=tempnow->next;
}
strcpy(activity[y].member[activity[y].people_number],user[x].user_ID);
strcpy(tempnow->member[tempnow->people_number],user[x].user_ID);
tempnow->people_number++;
activity[y].people_number++;
cout<<'\n';
cout<<" 恭喜您成功加入活动"<<'\n';
cout<<'\n';
cout<<" 请按任意键返回个人页面"<<'\n';
getch();
system("CLS");
menu_person(x);
}
else//人数满了
{
cout<<'\n';
cout<<'\n';
cout<<" 您申请加入的活动人数已满,请重新选择"<<'\n';
cout<<'\n';
cout<<" 按任意键返回查找界面......"<<'\n';
getch();
system("CLS");
search_activity(x);
}
}
else if(cur==2)
{
system("CLS");
menu_person(x);
}
}
bool vague_search(char str1[],char str2[])//查询是否是子串
{
if(strstr(str1,str2))
return true;
else
return false;
}
void search_activity(int x)//查找活动
{
bool have_search_victory=0;//用来判断是否查询到活动
int cur=1;
int location[500];
char str[500];
cout<<'\n';
cout<<'\n';
cout<<'\n';
cout<<" ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※活动查询(可输入关键字)※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※"<<'\n';
cout<<"--------------------------------------------------------------------------------------"<<'\n';
cout<<'\n';
cout<<" 您查询的活动名为:";
cin>>str;
cout<<'\n';
cout<<" 为您查询到以下活动"<<'\n';
cout<<"--------------------------------------------------------------------------------------"<<'\n';
for(int i=0; i<Activity_number; i++)//模糊查询
{
if(!activity[i].flag)
continue;
bool tag=1;//用来判断该活动是否符合查询条件
for(int j=0; j<strlen(str); j++)
{
char str1[3];
str1[0]=str[j];
str[1]='\0';
if(!vague_search(activity[i].activity_name,str1))
{
tag=0;
break;
}
}
if(tag)
{
have_search_victory=1;
cout<<'\n';
cout<<" 【"<<cur<<"】"<<activity[i].activity_name<<endl;
location[cur]=i;
cur++;
}
}
if(!have_search_victory)
{
cout<<" 未查询到符合的活动"<<endl;
cout<<"-----------------------------------------------------------------------------------------------"<<'\n';
cout<<'\n';
cout<<" 请选择您接下来的操作"<<'\n';
cout<<" ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※"<<'\n';
cout<<" ※ ※"<<'\n';
cout<<" ※ ※"<<'\n';
cout<<" ※ 【1】返回个人界面 ※"<<'\n';
cout<<" ※ ※"<<'\n';
cout<<" ※ ※"<<'\n';
cout<<" ※ 【2】重新查询 ※"<<'\n';
cout<<" ※ ※"<<'\n';
cout<<" ※ ※"<<'\n';
cout<<" ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※"<<'\n';
cout<<'\n';
cout<<" 您的操作是:";
int xx;
cin>>xx;
cout<<'\n';
cout<<" 请按任意键继续..."<<endl;
getch();
system("CLS");
if(xx==1)
menu_person(x);
else if(xx==2)
search_activity(x);
}
else
{
cout<<"--------------------------------------------------------------------------------------"<<'\n';
cout<<'\n';
cout<<" 您要查看的活动是:";
int yy;
cin>>yy;
cout<<" 请按任意键继续......"<<'\n';
getch();
system("CLS");
see_one_activity(x,location[yy]);
}
}
int LinkDelete_L(Activity_LinkList &L,int i)//删除结点
{
Activity_LinkList p=L;
int j=0;
while(p->next&&j<i-1)
{
p=p->next;
++j;
}
if(!(p->next)||j>i-1)
return 0;
Activity_LinkList q=p->next;
p->next=q->next;
free(q);
return 1;
}
void delete_activity(int x)//删除活动
{
cout<<" 亲爱的"<<user[x].user_ID<<"用户!";
cout<<"--------------------------------------------------------------------------------";
cout<<'\n';
if(!user[x].create_activity_number)
{
cout<<" 您未创建任何活动"<<'\n';
cout<<" 请按任意键返回个人页面"<<endl;
getch();
system("CLS");
menu_person(x);
}
else
{
cout<<"※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※"<<'\n';
for(int i=0; i<user[x].create_activity_number; i++)
{
cout<<"***********************************************************************************"<<'\n';
cout<<'\n';
cout<<" 【"<<i+1<<"】"<<user[x].create_activity_name[i]<<'\n';
cout<<'\n';
}
cout<<"***********************************************************************************"<<'\n';
cout<<'\n';
cout<<"※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※"<<'\n';
cout<<'\n';
cout<<" 您要删除的活动是:";
int cur;
cin>>cur;
int k=0;
for(; k<Activity_number; k++)//找到活动
if(!strcmp((activity[k].activity_name),user[x].create_activity_name[cur-1]))
break;
int temp;
//-----------------------信息处理
for(temp=0; temp<ID_number; temp++)
{
for(int p=0; p<activity[k].people_number; p++)
{
if(!strcmp(user[temp].user_ID,activity[k].member[p]))
{
for(int j=0; j<user[temp].join_activity_number; j++)
{
if(!strcmp(user[temp].join_activity_name[j],activity[k].activity_name))
{
//---------删掉用户信息中的关于该活动的信息
user_LinkList tempnowa;
tempnowa=user_message->next;
while(tempnowa)
{
if(!strcmp(tempnowa->user_ID,user[temp].user_ID))
break;
tempnowa=tempnowa->next;
}
for(int g=j+1; g<user[temp].join_activity_number; g++)
{
strcpy(user[temp].join_activity_name[g-1],user[temp].join_activity_name[g]);
strcpy(tempnowa->join_activity_name[g-1],tempnowa->join_activity_name[g]);
}
user[temp].join_activity_number--;
tempnowa->join_activity_number--;
break;
}
}
}
}
}
user_LinkList tempnow;
tempnow=user_message->next;
while(strcmp(user[x].user_ID,tempnow->user_ID))
tempnow=tempnow->next;
for(int i=k+1; i<user[x].create_activity_number; i++)
{
strcpy(user[x].create_activity_name[i-1],user[x].create_activity_name[i]);
strcpy(tempnow->create_activity_name[i-1],tempnow->create_activity_name[i]);
}
user[x].create_activity_number--;
tempnow->create_activity_number--;
LinkDelete_L(Activity_message,activity[k].link_cur);
for(int p=k+1; p<Activity_number; p++)
activity[p].link_cur--;
activity[k].flag=0;
decrease++;
cout<<'\n';
cout<<" 您已成功删除活动"<<'\n';
cout<<'\n';
cout<<" 请按任意键返回个人页面"<<endl;
getch();
system("CLS");
menu_person(x);
}
}
void join_activity(int x)//加入活动
{
cout<<'\n';
cout<<'\n';
cout<<" 请输入您要参加的活动序号"<<'\n';
cout<<'\n';
cout<<"------------------------------------------------------------------------------"<<'\n';
for(int i=0; i<Activity_number; i++)
{
cout<<'\n';
if(activity[i].flag)
cout<<" 【"<<i+1<<"】"<<activity[i].activity_name<<'\n';
}
cout<<'\n';
cout<<"------------------------------------------------------------------------------"<<'\n';
cout<<'\n';
cout<<" 您想参加的活动是:";
int want;
cin>>want;
if(activity[want-1].people_number_limit-activity[want-1].people_number>0)//人数未满
{
//-----------------------以下是用户信息处理
user_LinkList tempa;
tempa=user_message->next;
while(tempa)
{
if(!strcmp(tempa->user_ID,user[x].user_ID))
break;
tempa=tempa->next;
}
strcpy(user[x].join_activity_name[user[x].join_activity_number],activity[want-1].activity_name);
strcpy(tempa->join_activity_name[tempa->join_activity_number],activity[want-1].activity_name);
tempa->join_activity_number++;
user[x].join_activity_number++;
Activity_LinkList tempnow;
tempnow=Activity_message->next;
while(tempnow)
{
if(!strcmp(tempnow->activity_name,activity[want-1].activity_name))
break;
tempnow=tempnow->next;
}
strcpy(activity[want-1].member[activity[want-1].people_number],user[x].user_ID);
strcpy(tempnow->member[tempnow->people_number],user[x].user_ID);
tempnow->people_number++;
activity[want-1].people_number++;
cout<<'\n';
cout<<" 恭喜您成功加入活动"<<'\n';
cout<<'\n';
cout<<" 请按任意键返回个人页面"<<'\n';
getch();
system("CLS");
menu_person(x);
}
else//人数已满
{
cout<<'\n';
cout<<'\n';
cout<<" 您申请加入的活动人数已满,请重新选择"<<'\n';
cout<<'\n';
cout<<" 按任意键继续......"<<'\n';
getch();
system("CLS");
join_activity(x);
}
}
void activity_comment(int x,int y)//活动评论
{
cout<<'\n';
cout<<'\n';
cout<<'\n';
cout<<" 以下是关于活动“"<<activity[x].activity_name<<"”的评论"<<endl;
cout<<'\n';
cout<<"※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※"<<'\n';
if(!activity[x].comment_cur)
{
cout<<'\n';
cout<<" 暂时没有关于次活动的评论,快来抢沙发吧!"<<endl;
}
else
{
for(int i=0; i<activity[x].comment_cur; i++)
{
cout<<'\n';
cout<<"------------------------------------------------------------------------------------"<<'\n';
cout<<" 【"<<i+1<<"】"<<activity[x].commemt[i]<<'\n';
}
}
cout<<"※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※"<<'\n';
cout<<'\n';
cout<<"评论:";
cin>>activity[x].commemt[activity[x].comment_cur];
Activity_LinkList tempnow;
tempnow=Activity_message->next;
while(tempnow)
{
if(!strcmp(tempnow->activity_name,activity[x].activity_name))
break;
tempnow=tempnow->next;
}
strcpy(tempnow->commemt[tempnow->comment_cur],activity[x].commemt[activity[x].comment_cur]);
tempnow->comment_cur++;
activity[x].comment_cur++;
cout<<'\n';
cout<<" 恭喜您,评论成功";
cout<<'\n';
cout<<" 请选择您接下来的操作";
cout<<'\n';
cout<<" __________________________________________"<<'\n';
cout<<" | |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【1】返回个人界面 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【2】查看所有活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【3】创建活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【4】查看自己创建的活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【5】退出系统 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" ---------------------------------------- |"<<'\n';
cout<<'\n';
int cur;
cout<<" 您的操作是:";
cin>>cur;
system("CLS");
if(cur==1)
menu_person(y);
else if(cur==2)
see_activity(y);
else if(cur==3)
create_activity(y);
else if(cur==4)
see_created_activity(y);
else if(cur==5)
menu_end();
}
void see_joined_activity(int x)//查看加入的活动
{
cout<<'\n';
cout<<'\n';
cout<<'\n';
if(!user[x].join_activity_number)
{
cout<<" 您未加入任何活动"<<endl;
cout<<'\n';
cout<<" 请选择您接下来的操作"<<'\n';
cout<<'\n';
cout<<" __________________________________________"<<'\n';
cout<<" | |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【1】返回个人界面 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【2】查看所有活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【3】创建活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【4】查看自己创建的活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【5】退出系统 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" ---------------------------------------- |"<<'\n';
cout<<'\n';
int cur;
cout<<" 您接下来的操作是:";
cin>>cur;
getchar();
cout<<" 请按任意键继续...... "<<'\n';
getch();
system("CLS");
if(cur==1)
menu_person(x);
else if(cur==2)
see_activity(x);
else if(cur==3)
create_activity(x);
else if(cur==4)
see_created_activity(x);
else if(cur==5)
menu_end();
}
else
{
cout<<" 您加入的活动有"<<'\n';
for(int i=0; i<user[x].join_activity_number; i++)
{
cout<<'\n';
cout<<" 【"<<i+1<<"】:"<<user[x].join_activity_name[i]<<'\n';
}
cout<<'\n';
cout<<" 请选择您接下来的操作"<<'\n';
cout<<'\n';
cout<<" __________________________________________"<<'\n';
cout<<" | |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【1】返回个人界面 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【2】查看所有活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【3】创建活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【4】退出系统 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【5】选择活动查看和发表评论 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" ---------------------------------------- |"<<'\n';
cout<<'\n';
int cur;
cout<<" 您接下来的操作是:";
cin>>cur;
getchar();
cout<<" 请按任意键继续...... "<<'\n';
getch();
system("CLS");
if(cur==1)
menu_person(x);
else if(cur==2)
see_activity(x);
else if(cur==3)
create_activity(x);
else if(cur==4)
menu_end();
else if(cur==5)
{
cout<<'\n';
cout<<'\n';
cout<<'\n';
cout<<" 您加入的活动有"<<'\n';
for(int i=0; i<user[x].join_activity_number; i++)
{
cout<<'\n';
cout<<" 【"<<i+1<<"】:"<<user[x].join_activity_name[i]<<'\n';
}
cout<<'\n';
int local;
cout<<" 请选择您要查看和评论的活动"<<'\n';
cout<<'\n';
cout<<" 您选择的活动是:";
cin>>local;
cout<<'\n';
cout<<'\n';
cout<<" 请按任意键进入评论页面......";
getch();
system("CLS");
//----------------------------------查找-----------------------------------------
int y;
for(int i=0; i<Activity_number; i++)
{
if(!strcmp(activity[i].activity_name,user[x].join_activity_name[local-1]))
{
y=i;
break;
}
}
activity_comment(y,x);
}
}
}
void see_activity(int x)//查看所有活动
{
if(Activity_number)
{
cout<<'\n';
cout<<'\n';
cout<<'\n';
cout<<" 以下是现在所有的活动"<<'\n';
cout<<"--------------------------------------------------------------------------------"<<'\n';
cout<<'\n';
int tag=0;
for(int i=0; i<Activity_number; i++)
{
if(activity[i].flag)
{
tag++;
cout<<"※------------------------------------------------------------------------------※"<<'\n';
cout<<'\n';
cout<<" 活动序号:"<<tag<<'\n';
cout<<'\n';
cout<<" 活动名称:"<<activity[i].activity_name<<'\n';
cout<<'\n';
cout<<" 活动时间:"<<activity[i].time<<'\n';
cout<<'\n';
cout<<" 活动地点:"<<activity[i].location<<'\n';
cout<<'\n';
cout<<" 人数限制:"<<activity[i].people_number_limit<<'\n';
cout<<'\n';
cout<<" 参加人数:"<<activity[i].people_number<<'\n';
cout<<'\n';
cout<<" 剩余人数"<<activity[i].people_number_limit-activity[i].people_number<<'\n';
cout<<'\n';
cout<<" 活动要求:"<<activity[i].require<<'\n';
cout<<'\n';
cout<<" 活动内容:"<<activity[i].content<<'\n';
cout<<'\n';
cout<<" 该创始人:"<<activity[i].create_people<<'\n';
cout<<"※------------------------------------------------------------------------------※"<<'\n';
cout<<'\n';
}
}
cout<<'\n';
cout<<"-----------------------------------------------------------------------------------"<<'\n';
cout<<'\n';
cout<<" 选择菜单"<<'\n';
cout<<" ※-----------------------------------※"<<'\n';
cout<<" | |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【1】加入活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【2】返回个人页面 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【3】创建活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【4】退出系统 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" ※-----------------------------------※"<<'\n';
int cur;
cout<<" 您接下来的操作是:";
cin>>cur;
cout<<'\n';
cout<<" 请按任意键继续...";
getch();
system("CLS");
if(cur==1)
{
join_activity(x);
}
else if(cur==2)
{
menu_person(x);
}
else if(cur==3)
{
create_activity(x);
}
else if(cur==4)
{
menu_end();
}
}
else
{
cout<<'\n';
cout<<'\n';
cout<<'\n';
cout<<"---------------------------------------目前尚未有活动,等待您的创建---------------------------------------"<<'\n';
cout<<'\n';
cout<<'\n';
cout<<" 请选择您接下来的操作"<<'\n';
cout<<'\n';
cout<<" __________________________________________"<<'\n';
cout<<" | |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【1】返回个人界面 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【2】创建活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【3】退出系统 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" ---------------------------------------- |"<<'\n';
cout<<'\n';
int cur;
cout<<" 您接下来的操作是:";
cin>>cur;
getchar();
cout<<" 请按任意键继续...... "<<'\n';
getch();
system("CLS");
if(cur==1)
menu_person(x);
else if(cur==2)
create_activity(x);
else if(cur==3)
menu_end();
}
}
void create_activity(int x)//创建活动
{
temptail= (Activity_LinkList)malloc(sizeof(load_Activity));//新建活动结点
temptail->next=NULL;
cout<<'\n';
cout<<'\n';
cout<<'\n';
cout<<" 活动创建页面 "<<'\n';
cout<<"-----------------------------------------------------------------------"<<'\n';
cout<<'\n';
cout<<" 请按要求填写以下活动信息 "<<endl;
cout<<endl;
cout<<" 1.活动名称:";
cin>>temptail->activity_name;
strcpy(activity[Activity_number].activity_name,temptail->activity_name);
cout<<'\n';
cout<<" 2.活动时间:";
cin>>temptail->time;
strcpy(activity[Activity_number].time,temptail->time);
cout<<'\n';
cout<<" 3.活动人数:";
cin>>temptail->people_number_limit;
activity[Activity_number].people_number_limit=temptail->people_number_limit;
cout<<'\n';
cout<<" 4.活动地点:";
cin>>temptail->location;
strcpy(activity[Activity_number].location,temptail->location);
cout<<'\n';
cout<<" 5.活动要求:";
cin>>temptail->require;
strcpy(activity[Activity_number].require,temptail->require);
cout<<'\n';
cout<<" 6.活动内容:";
cin>>temptail->content;
strcpy(activity[Activity_number].content,temptail->content);
getchar();
cout<<'\n';
//-------------------信息处理-------------
strcpy(temptail->create_people,user[x].user_ID);
strcpy(activity[Activity_number].create_people,temptail->create_people);
strcpy(temptail->member[temptail->people_number],user[x].user_ID);
strcpy(activity[Activity_number].member[activity[Activity_number].people_number],user[x].user_ID);
strcpy(user[x].create_activity_name[user[x].create_activity_number],temptail->activity_name);
user[x].create_activity_number++;
strcpy(user[x].join_activity_name[user[x].join_activity_number],temptail->activity_name);
user[x].join_activity_number++;
user_LinkList tempnow;
tempnow=user_message->next;
while(strcmp(user[x].user_ID,tempnow->user_ID))
tempnow=tempnow->next;
strcpy(tempnow->create_activity_name[tempnow->create_activity_number],temptail->activity_name);
tempnow->create_activity_number++;
strcpy(tempnow->join_activity_name[tempnow->join_activity_number],temptail->activity_name);
tempnow->join_activity_number++;
temptail->people_number++;
activity[Activity_number].people_number++;
activity[Activity_number].link_cur=Activity_number+1;
cout<<activity[Activity_number].link_cur<<endl;
Activity_number++;
tail->next=temptail;
tail=tail->next;
cout<<" 恭喜您成功创建活动!"<<'\n';
cout<<'\n';
cout<<" 请按任意键返回个人页面......";
getch();
system("CLS");
menu_person(x);
}
void see_created_activity(int x)//查看创建的活动
{
cout<<'\n';
cout<<'\n';
cout<<'\n';
if(!user[x].create_activity_number)
{
cout<<" 您未创建任何活动"<<'\n';
cout<<'\n';
cout<<" 请选择您接下来的操作"<<'\n';
cout<<'\n';
cout<<" __________________________________________"<<'\n';
cout<<" | |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【1】返回个人界面 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【2】查看所有活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【3】创建活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【4】退出系统 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" ---------------------------------------- |"<<'\n';
cout<<'\n';
int cur;
cout<<" 您接下来的操作是:";
cin>>cur;
getchar();
cout<<" 请按任意键继续...... "<<'\n';
getch();
system("CLS");
if(cur==1)
menu_person(x);
else if(cur==2)
see_activity(x);
else if(cur==3)
create_activity(x);
else if(cur==4)
menu_end();
}
else
{
cout<<" 您创建的活动有:"<<'\n';
for(int i=0; i<user[x].create_activity_number; i++)
{
cout<<'\n';
cout<<" 【"<<i+1<<"】:"<<user[x].create_activity_name[i]<<'\n';
}
cout<<'\n';
cout<<" 请选择您接下来的操作"<<'\n';
cout<<'\n';
cout<<" __________________________________________"<<'\n';
cout<<" | |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【1】返回个人界面 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【2】查看所有活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【3】创建活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【4】删除活动 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" | 【5】退出系统 |"<<'\n';
cout<<" | |"<<'\n';
cout<<" ---------------------------------------- |"<<'\n';
cout<<'\n';
int cur;
cout<<" 您接下来的操作是:";
cin>>cur;
getchar();
cout<<" 请按任意键继续...... "<<'\n';
getch();
system("CLS");
if(cur==1)
menu_person(x);
else if(cur==2)
see_activity(x);
else if(cur==3)
create_activity(x);
else if(cur==5)
menu_end();
else if(cur==4)
delete_activity(x);
}
}
void put_user_message()//将用户信息写入文件
{
ofstream fout("user.txt");
user_LinkList p;
p=user_message->next;
while(p!=NULL)
{
fout<<p->join_activity_number<<" "<<p->create_activity_number<<'\n';
for(int i=0; i<p->join_activity_number; i++)
fout<<p->join_activity_name[i]<<'\n';
for(int i=0; i<p->create_activity_number; i++)
fout<<p->create_activity_name[i]<<'\n';
fout<<p->user_ID<<" "<<p->user_password<<" "<<p->secret_protection[0]<<" "<<p->secret_protection[1]<<" "<<p->secret_protection[2];
ID_number--;
if(ID_number)
fout<<'\n';
p=p->next;
}
fout.close();
}
void put_activity_message()//将活动信息写入文件
{
ofstream fout("activity.txt");
Activity_LinkList p;
p=Activity_message->next;
Activity_number=Activity_number-decrease;
while(p!=NULL)
{
fout<<p->time<<'\n';
fout<<p->location<<'\n';
fout<<p->require<<'\n';
fout<<p->content<<'\n';
fout<<p->create_people<<'\n';
fout<<p->people_number<<" "<<p->people_number_limit<<'\n';
for(int i=0; i<p->people_number; i++)
fout<<p->member[i]<<'\n';
fout<<p->comment_cur<<'\n';
for(int i=0; i<p->comment_cur; i++)
fout<<p->commemt[i]<<'\n';
fout<<p->activity_name;
Activity_number--;
if(Activity_number)
fout<<'\n';
p=p->next;
}
fout.close();
}
void load_user_message()//读取用户信息
{
//----------------录入链表----------
user_LinkList t;
int i,sum=0;
ifstream fin("user.txt");
user_message= (user_LinkList)malloc(sizeof(load_user));
user_message->next = NULL; // 先建立一个带头结点的单链表
q = (user_LinkList)malloc(sizeof(load_user));
q = user_message;
int k=0;
while(fin.peek()!=EOF)
{
p = (user_LinkList)malloc(sizeof(load_user)); // 生成新结点
memset(p->user_ID,'\0',sizeof(p->user_ID));
memset(p->user_password,'\0',sizeof(p->user_password));
memset(p->secret_protection[0],'\0',sizeof(p->secret_protection[0]));
memset(p->secret_protection[1],'\0',sizeof(p->secret_protection[1]));
memset(p->secret_protection[2],'\0',sizeof(p->secret_protection[2]));
fin>>p->join_activity_number>>p->create_activity_number;
for(int i=0; i<p->join_activity_number; i++)
fin>>p->join_activity_name[i];
for(int i=0; i<p->create_activity_number; i++)
fin>>p->create_activity_name[i];
fin>>p->user_ID>>p->user_password>>p->secret_protection[0]>>p->secret_protection[1]>>p->secret_protection[2];
p->next=NULL;
q->next=p;
q=q->next;
sum++;
}
//--------------录入结构体数组-----待会可能用到二分查找------//
ID_number=sum;
t=user_message;
i=0;
t=t->next;
while(t!=NULL)
{
memset(user[i].user_ID,'\0',sizeof(user[i].user_ID));
strcpy(user[i].user_ID,t->user_ID);
strcpy(user[i].user_password,t->user_password);
strcpy(user[i].secret_protection[0],t->secret_protection[0]);
strcpy(user[i].secret_protection[1],t->secret_protection[1]);
strcpy(user[i].secret_protection[2],t->secret_protection[2]);
user[i].join_activity_number=t->join_activity_number;
for(int j=0; j<user[i].join_activity_number; j++)
strcpy(user[i].join_activity_name[j],t->join_activity_name[j]);
user[i].create_activity_number=t->create_activity_number;
for(int j=0; j<user[i].create_activity_number; j++)
strcpy(user[i].create_activity_name[j],t->create_activity_name[j]);
user[i].cur=i;
i++;
t=t->next;
}
fin.close();
}
void load_activity_message()//读取活动信息
{
int i;
ifstream fin("activity.txt");
Activity_message= (Activity_LinkList)malloc(sizeof(load_Activity));
Activity_message->next = NULL; // 先建立一个带头结点的单链表
tail= (Activity_LinkList)malloc(sizeof(load_Activity));
tail= Activity_message;
while(fin.peek()!=EOF)
{
temptail= (Activity_LinkList)malloc(sizeof(load_Activity)); // 生成新结点
fin>>temptail->time;
fin>>temptail->location;
fin>>temptail->require;
fin>>temptail->content;
fin>>temptail->create_people;
fin>>temptail->people_number>>temptail->people_number_limit;
for(int i=0; i<temptail->people_number; i++)
fin>>temptail->member[i];
fin>>temptail->comment_cur;
for(int i=0; i<temptail->comment_cur; i++)
fin>>temptail->commemt[i];
fin>>temptail->activity_name;
temptail->next=NULL;
tail->next=temptail;
tail=tail->next;
Activity_number++;
}
fin.close();
//--------------录入结构体数组-----待会可能用到二分查找------//
Activity_LinkList t;
t=Activity_message->next;
i=0;
while(t!=NULL)
{
activity[i].link_cur=i+1;
strcpy(activity[i].time,t->time);
strcpy(activity[i].location,t->location);
strcpy(activity[i].require,t->require);
strcpy(activity[i].content,t->content);
strcpy(activity[i].create_people,t->create_people);
activity[i].people_number=t->people_number;
activity[i].people_number_limit=t->people_number_limit;
for(int k=0; k<t->people_number; k++)
strcpy(activity[i].member[k],t->member[k]);
activity[i].comment_cur=t->comment_cur;
for(int k=0; k<t->comment_cur; k++)
strcpy(activity[i].commemt[k],t->commemt[k]);
activity[i].flag=1;
strcpy(activity[i].activity_name,t->activity_name);
i++;
t=t->next;
}
fin.close();
}
bool change_secret(int x)//修改密码
{
while(1)
{
char input1[20],input2[20];
system("CLS");
cout<<'\n';
cout<<'\n';
cout<<'\n';
cout<<" 请输入您的新密码(16位字符以内):";
scanf("%s",input1);
getchar();
cout<<" 请再次输入您的新密码:";
scanf("%s",input2);
getchar();
if(!strcmp(input2,input1))
{
user_LinkList temp;
temp=user_message;
strcpy(user[x].user_password,input1);
for(int k=0; k<=user[x].cur; k++)
temp=temp->next;
strcpy(temp->user_password,input1);
return 1;
}
else
{
cout<<" 您两次输入的密码不相同,请重新输入"<<'\n';
cout<<'\n';
cout<<" 请按任意键继续...";
getch();
continue;
}
}
}
bool search_secret()//找回密码
{
system("CLS");
while(1)
{
int i=0;
char ID[20];
cout<<endl;
cout<<endl;
cout<<endl;
cout<<" 请输入您的账号:";
cin>>ID;
cout<<endl;
for(i=0; i<ID_number; i++) //查找账号
if(!strcmp(user[i].user_ID,ID))
break;
if(i==ID_number)//账号不存在时
{
int cur;
cout<<endl;
cout<<" 您输入的账号不存在,请重新输入或注册账号"<<endl;
cout<<" 【1】重新输入"<<endl;
cout<<endl;
cout<<" 【2】注册账号"<<endl;
cout<<endl;
cout<<" 请输入您的操作:"<<endl;
cin>>cur;
getchar();
cout<<endl;
cout<<" 请按任意键进入下一操作..."<<endl;
getch();
if(cur==1)
{
system("CLS");
continue;
}
else if(cur==2)
{
system("CLS");
Register();
return 1;
}
}
else
{
while(1)
{
char input[3][20];
cout<<" 第一个问题:您最好的外国朋友叫什么名字?(16个字母以内) "<<endl;
cout<<" :";
scanf("%s",input[0]);
getchar();
if(!strcmp(user[i].secret_protection[0],input[0]))
{
cout<<'\n';
cout<<" 答案正确!请进入下题作答"<<'\n';
}
else
{
cout<<" 答案错误,请重新输入"<<endl;
cout<<'\n';
cout<<" 请按任意键继续...."<<'\n';
getch();
system("CLS");
continue;
}
cout<<endl;
cout<<" 第二个问题:你喜欢的数字是多少?(16位数以内) "<<endl;
cout<<" :";
scanf("%s",input[1]);
getchar();
if(!strcmp(user[i].secret_protection[1],input[1]))
{
cout<<'\n';
cout<<" 答案正确!请进入下题作答"<<'\n';
}
else
{
cout<<" 答案错误,请重新输入"<<endl;
cout<<'\n';
cout<<" 请按任意键继续...."<<'\n';
getch();
system("CLS");
continue;
}
cout<<endl;
cout<<" 第三个问题: 您的英文名字叫什么?(16个字母以内) "<<endl;
cout<<" :";
scanf("%s",input[2]);
getchar();
if(!strcmp(user[i].secret_protection[2],input[2]))
{
cout<<'\n';
cout<<'\n';
cout<<" 恭喜您成功验证密保! "<<endl;
cout<<endl;
cout<<" 请选择接下来您想进行的操作";
cout<<endl;
cout<<" |--------------------------------------| "<<endl;
cout<<" | |"<<endl;
cout<<" | 【1】获取密码 |"<<endl;
cout<<" | |"<<endl;
cout<<" | 【2】修改密码 |"<<endl;
cout<<" | |"<<endl;
cout<<" | 【3】退出系统 |"<<endl;
cout<<" | |"<<endl;
cout<<" |--------------------------------------|"<<endl;
cout<<" 您的选择是:";
int a;
cin>>a;
getchar();
if(a==1)
{
cout<<'\n';
cout<<" 您的密码是:"<<user[i].user_password<<'\n';
cout<<'\n';
cout<<" 请按任意键返回初始页面...";
getch();
system("CLS");
menu_1();
return 0;
}
else if(a==2)
{
if(change_secret(i))
{
cout<<'\n';
cout<<" 您已成功修改密码"<<endl;;
cout<<" 请按任意键返回初始页面...";
getch();
system("CLS");
menu_1();
}
return 0;
}
else if(a==3)
{
menu_end();
return 0;
}
}
else
{
cout<<" 答案错误,请重新输入"<<endl;
cout<<'\n';
cout<<" 请按任意键继续...."<<'\n';
getch();
system("CLS");
continue;
}
}
}
}
}
bool Login_ID()//账号登录
{
system("CLS");
while(1)
{
bool flag=1;
int i=0;
cout<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
char now_user_ID[20],now_user_password[20];
cout<<" 请输入账号"<<endl;
cout<<" :";
scanf("%s",now_user_ID);
getchar();
cout<<endl;
cout<<" 请输入密码"<<endl;
cout<<" :";
int cur_x=0;
char ch;
ch=getch();
while(ch!='\r')
{
cout<<"*";
now_user_password[cur_x++]=ch;
ch=getch();
}
now_user_password[cur_x]='\0';
cout<<endl;
for(i=0; i<ID_number; i++) //查找账号
if(!strcmp(user[i].user_ID,now_user_ID))
break;
if(i==ID_number)//账号不存在
{
int cur;
cout<<endl;
cout<<" 您输出的账号不存在,请重新输入或注册账号"<<endl;
cout<<endl;
cout<<" 【1】重新输入"<<endl;
cout<<endl;
cout<<" 【2】注册账号"<<endl;
cout<<endl;
cout<<" 请输入您的操作:"<<endl;
cin>>cur;
getchar();
cout<<'\n';
cout<<" 请按任意键进入下一操作..."<<endl;
getch();
if(cur==1)
{
system("CLS");
continue;
}
else if(cur==2)
{
system("CLS");
Register();
return 1;
}
}
else//存在
{
if(!strcmp(user[i].user_password,now_user_password))
{
cout<<" 恭喜您登录成功"<<endl;
cout<<endl;
cout<<" 请按任意键进入个人页面......"<<endl;
getch();
system("CLS");
menu_person(i);
return 0;
}
else
{
int cur;
cout<<endl;
cout<<" 密码错误,请重新登录或找回密码"<<endl;
cout<<endl;
cout<<" 【1】重新输入"<<endl;
cout<<endl;
cout<<" 【2】找回密码"<<endl;
cout<<endl;
cout<<" 请输入您的操作:";
cin>>cur;
getchar();
cout<<endl;
cout<<" 请按任意键进入下一操作..."<<endl;
getch();
if(cur==1)
{
system("CLS");
continue;
}
else
{
system("CLS");
search_secret();
return 0;
}
}
}
}
}
void create_secret_protection()//创建密保
{
cout<<" 第一个问题:您最好的外国朋友叫什么名字?(16个字母以内) "<<endl;
cout<<" :";
scanf("%s",user[ID_number].secret_protection[0]);
getchar();
cout<<endl;
cout<<" 第二个问题:你喜欢的数字是多少?(16位数以内) "<<endl;
cout<<" :";
scanf("%s",user[ID_number].secret_protection[1]);
getchar();
cout<<endl;
cout<<" 第三个问题: 您的英文名字叫什么?(16个字母以内) "<<endl;
cout<<" :";
scanf("%s",user[ID_number].secret_protection[2]);
getchar();
cout<<endl;
cout<<" 恭喜您成功注册密保,我们将为您的账号保驾护航 "<<endl;
cout<<endl;
cout<<" 请按任意键继续...... "<<endl;
strcpy(p->secret_protection[0],user[ID_number].secret_protection[0]);
strcpy(p->secret_protection[1],user[ID_number].secret_protection[1]);
strcpy(p->secret_protection[2],user[ID_number].secret_protection[2]);
p->next=NULL;
q->next=p;
q=q->next;
getch();
system("CLS");
}
bool Register()//注册账号
{
while(1)
{
bool is_created=false;//判断用户名是否被注册过
cout<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
cout<<" 请输入长度不超过16位由英文和数字的用户名"<<endl;
cout<<" :";
scanf("%s",user[ID_number].user_ID);
getchar();
cout<<endl;
cout<<" 请输入长度不超过16位的密码"<<endl;
cout<<" :";
scanf("%s",user[ID_number].user_password);
getchar();
for(int i=0; i<ID_number; i++) //查找已有的账号,看用户名是否重复。
{
if(strcmp(user[i].user_ID,user[ID_number].user_ID)==0)
{
is_created=true;
break;
}
}
if(!is_created)
{
p=(user_LinkList)malloc(sizeof(load_user));
strcpy(p->user_ID,user[ID_number].user_ID);
strcpy(p->user_password,user[ID_number].user_password);
cout<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
cout<<" 温馨提示,为了您的账户安全,您必须注册密保 "<<endl;
cout<<endl;
cout<<" 下面进入注册密保环节 "<<endl;
cout<<endl;
cout<<" 请按任意键进入下一环节...... "<<endl;
getch();
system("CLS");
create_secret_protection();
ID_number++;
cout<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
cout<<" 恭喜您成功注册账号! "<<endl;
cout<<endl;
cout<<" 请选择接下来您想进行的操作";
cout<<endl;
cout<<" |--------------------------------------| "<<endl;
cout<<" | |"<<endl;
cout<<" | 【1】返回上一菜单 |"<<endl;
cout<<" | |"<<endl;
cout<<" | 【2】登录账号 |"<<endl;
cout<<" | |"<<endl;
cout<<" | 【3】退出系统 |"<<endl;
cout<<" | |"<<endl;
cout<<" |--------------------------------------|"<<endl;
cout<<'\n';
cout<<" 您的选择是:";
int a;
cin>>a;
getch();
system("CLS");
if(a==1)
{
menu_1();
return 0;
}
else if(a==2)
{
Login_ID();
return 0;
}
else if(a==3)
{
menu_end();
return 0;
}
}
else
{
cout<<endl;
cout<<" 改用户名已被注册 "<<endl;
cout<<endl;
cout<<" 请按任意键重新开始注册 "<<endl;
getch();
system("CLS");
}
}
}
string getTime()//得到时间
{
time_t timep;
time (&timep); //获取time_t类型的当前时间
char tmp[64];
strftime(tmp, sizeof(tmp), "%Y-%m-%d %H:%M:%S",localtime(&timep) );//对日期和时间进行格式化
return tmp;
}
void menu_1()//主界面
{
int a;
string time = getTime();
cout<<" ***********************************************************************************************************************"<<endl;
cout<<" * * * *"<<endl;
cout<<" * 当前的时间是:"<<time<<" * 欢迎来到LEO的活动管理系统 * *"<<endl;
cout<<" * * * *"<<endl;
cout<<" *********************************************** * *"<<endl;
cout<<" * |--------------------------------------| *"<<endl;
cout<<" * 关于本活动管理程序的内容如下 | 请选择您需要的服务 | *"<<endl;
cout<<" * | | *"<<endl;
cout<<" * 1.您可创建和删除活动 | 【1】账号登录 | *"<<endl;
cout<<" * | | *"<<endl;
cout<<" * 2.您可以查看和对参加的活动发表评论 | | 愿 你 在 *"<<endl;
cout<<" * | 【2】账号注册 | 未来 *"<<endl;
cout<<" * 3.您可以查看和参加正在征集的活动 | | 能 *"<<endl;
cout<<" * | | 与 重 要 的 人 *"<<endl;
cout<<" * 4.您可以注册和找回自己的账号 | 【3】密码找回 | 再次重逢 *"<<endl;
cout<<" * | | *"<<endl;
cout<<" * 5.该系统可以实现单词组合查询活动名 | | -------以上 *"<<endl;
cout<<" * | 【4】退出系统 | *"<<endl;
cout<<" * 6.该系统会自动统计参加人数和人员名单 | | *"<<endl;
cout<<" * | | *"<<endl;
cout<<" * 7.该系统完全免费,且会给您优质的体验 | 祝您活动愉快 | *"<<endl;
cout<<" * |--------------------------------------| *"<<endl;
cout<<" "<<endl;
cout<<" "<<endl;
cout<<" "<<endl;
cout<<" "<<endl;
cout<<" 您的选择是:";
cin>>a;
getchar();
if(a==1)
{
Login_ID();
}
else if(a==2)
{
system("CLS");
Register();
}
else if(a==3)
{
search_secret();
}
else if(a==4)
{
menu_end();
}
}
void menu_person(int x)//用户界面
{
cout<<" 个人主页"<<'\n';
cout<<"----------------------------------------------------------------------------------------------------------"<<'\n';
cout<<'\n';
cout<<'\n';
cout<<'\n';
cout<<" 尊敬的用户:"<<user[x].user_ID<<"欢迎您的到来"<<endl;
cout<<endl;
printf(" ***************************\n");
printf(" *| |*\n");
printf(" *| 欢迎使用该系统 |*\n");
printf(" *| |*\n");
printf(" *| |*\n");
printf(" *| 请选择要进行的操作: |*\n");
printf(" *| |*\n");
printf(" *| 1.查看所有活动 |*\n");
printf(" *| |*\n");
printf(" *| |*\n");
printf(" *| 2.查看已加入活动 |*\n");
printf(" *| |*\n");
printf(" *| |*\n");
printf(" *| 3.查看已创建活动 |*\n");
printf(" *| |*\n");
printf(" *| |*\n");
printf(" *| 4.查找活动 |*\n");
printf(" *| |*\n");
printf(" *| |*\n");
printf(" *| 5.退出系统 |*\n");
printf(" ***************************\n");
printf("_________________________________________________________________________________________________________\n");
cout<<endl;
cout<<endl;
cout<<endl;
cout<<" 您的选择是:";
int cur;
cin>>cur;
getchar();
cout<<" 请按任意键继续......"<<endl;
getch();
system("CLS");
if(cur==1)
{
see_activity(x);
}
else if(cur==2)
{
see_joined_activity(x);
}
else if(cur==3)
{
see_created_activity(x);
}
else if(cur==4)
{
search_activity(x);
}
else if(cur==5)
menu_end();
}
void menu_end()//结束界面
{
system("CLS");
cout<<" "<<endl;
cout<<" 您已成功退出程序! "<<endl;
cout<<" "<<endl;
cout<<" 欢迎您的再次使用,若有建议欢迎提出! "<<endl;
cout<<" "<<endl;
cout<<" gPYr :SQKL7UJi.:.:...:.....:......: . . . "<<endl;
cout<<" rrri:7Uv7rv:. . . .Y. "<<endl;
cout<<" .s7::vJjv:..:.:.......:............... vBB: . "<<endl;
cout<<" 7uS2JJ1Yr::::.:.:...................... .UPi "<<endl;
cout<<" iZPP111Uvi::::........................:... : . . "<<endl;
cout<<" XBdSu1Ju7::::::.......:.............:....... "<<endl;
cout<<" MBKSu1uur:::::::......::.............: . ... . . "<<endl;
cout<<" QBK511j17:::::::......::............. rv. . .i... "<<endl;
cout<<" RBqX11JU7i::i:.:.......i...:.......... :YUv: .7i. ... "<<endl;
cout<<" KBbK2UUULi:i:7.:.......r.............:. .. :j1uj . ..ii. "<<endl;
cout<<" KjZPI2U2Jr:i:r:.:....:.ii......: ....:.. :..rs:.:i:. 7 :.i. "<<endl;
cout<<" U71MX5UXj7:i::7..:...:..r..:..... .. :. :2v: .ri : .. :...:: "<<endl;
cout<<" :E BPqUPSsii::rr.:...:...i..:....... .. :r. . :r::: ..i. .: "<<endl;
cout<<" B iBb5IPIriii:vi.:..::i:ri..i.....: .. . ...r... .r i:..: : "<<endl;
cout<<" . qP DRKX5Pjrii::7:.i..::. .:..i...... .:....:..ir.. r.. .... . "<<endl;
cout<<" B BEPIKSLii:::7.:i..... :..::.......:.. . i:.... ...:.:.:. .:.. 雷姆想要高分哦!"<<endl;
cout<<" . LB BZK5SSri::.:i..: . .. i...... i.. ... :: .. . i: .: . 谢谢大家的支持! "<<endl;
cout<<" Br :BPq5S1r::::.:. .7:jr: i......:.. . ... . .r. .:. . "<<endl;
cout<<" . B rBdS52Ui:::.. .EU:gBdBBQ. i.. ..:. . .YYJYr ... .::...: ..: "<<endl;
cout<<" .B vBPqU2Yr:... :5B7:QBQ: M: :. ..:. .. ZBBBPqBQJ. .... "<<endl;
cout<<" :Q YQdX2uLi:.. .iJ :rvBBvB . .. .. DBQB: Y5S: . ... "<<endl;
cout<<" . .d rBbPUU7::. .. . . .: . . r.vQqid .:. ... "<<endl;
cout<<" . Y iBZPqjY:.:......... .. . . . "<<endl;
cout<<" . i. .BgbqXsv:irv:.......... . .. . "<<endl;
cout<<" . 1. QQPPXKUv::77.......... . ........... .... .: . "<<endl;
cout<<" . LigQZXPKKSS: :. . . ............. :. .. "<<endl;
cout<<" . .PBZdqqSSXd7i7. . . . .. .: .. "<<endl;
cout<<" . QMEdPP5I5qXbi ::. .i : "<<endl;
cout<<" . XBgj2gPI5S52q: :ir7i.. .7. .. "<<endl;
cout<<" ... BBQ.7BZSXK22br .. .. rusri:: .7. : "<<endl;
cout<<" .. rRBB :RBEDPX2d5: vu7rir: .L: .: "<<endl;
cout<<" ... 7Y rrudZb2bq2: ruJ7rrri .j. r "<<endl;
cout<<" .... JDEPP1gZ2: .:r7usL77ri iu. r. "<<endl;
cout<<" . . . . rbr.gqUj7r: .2KI7vvri:.. :L r: "<<endl;
cout<<" ... .:::vr7Ysi.::... i77... .: "<<endl;
cout<<" ... .:...J7ir7i::::i::7.. "<<endl;
cout<<" .. .ii...r .ir::ir..i. "<<endl;
cout<<" ... . .77rri:. i:.......irrr . "<<endl;
cout<<" ... . r7irrvJ2Lr. ::si:.... .rr ... . "<<endl;
cout<<" . riiir:..ivU7. .::i:..77r:::. :. ..:: ... .. "<<endl;
cout<<" .. ii:r. :rr7v:..ii7Lrii::.......:..:: ... ..... . "<<endl;
cout<<" .. . .rrr7. i .v7rvri7:i:i::::... iidg: . . . .. "<<endl;
cout<<" ... ivir7vv7i:.. . .: .... 7U. MU:5 . . ... "<<endl;
cout<<" .. . virr. .rr:. .Ps gv7 :g . . . . "<<endl;
cout<<" . .7rr iJ : . g: Yg.vi :E . . . "<<endl;
cout<<" . :v7. .. .. . :v.r1i.r7. id . . . "<<endl;
cout<<". . i77 :r7: :v : . .v.X :s Xr7i .. . . "<<endl;
cout<<" . . isr .:77: 2 :.: .. rI iP . .. . "<<endl;
cout<<". .2. ..L: . R M "<<endl;
}