課設--活動管理--(已經完善)

目前已實現的功能有
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;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章