课设--活动管理--(已经完善)

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

  • 7
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 12
    评论
软 件 学 院 课程设计报告书 课程名称 数据库课程设计 设计题目 房产管理系统 专业班级 学 号 姓 名 指导教师 2014 年 6 月 目录 1 设计时间 1 2 设计目的 1 3 设计任务 1 4 设计内容 1 4.1 需求分析 4 4。2概念结构设计 4 4.3逻辑结构设计……………………………………………………………………………。……。。7 4。4物理结构设计 7 5 总结与展望 13 参考文献 14 成绩评定……………………………………………………………………14 "1 设计时间 " "2014年6月23日—6月26日 " "2 设计目的 " "本次课程设计的目的在于加深对数据库基本知识的理解,掌握使用数据库进行软件设" "计的基本方法,提高理论联系实际问题的能力,最终实现一个房产管理系统,方便用" "户使用,此系统具有分房、调房、退房和咨询统计的功能。使之能够有效地存储数据" ",满足各种用户的应用需求。 " "3设计任务 " "设计一个具有分房、调房、退房和统计功能的房产管理系统。方便房产科管理各个房" "产。使散乱的档案能够更加具体,直观,合理。本软件适用于不同的房地产商家,是" "一个比较完善的系统管理软件.我设计的系统中包括用户信息表,住房要求表,住房 " "文件表,分房要求表,退房要求表,调房要求表。 " "4 设计内容 " "4.1需求分析 " "人工管理存在不可避免的人为因素造成数据的遗漏、误报等弊端。为了解决这一问题" ",针对房产信息管理工作开发了房产管理系统.该系统可以很好的解决人工的弊端, " "通过系统进行管理,可以提高工作效率,适应用户的各种要求。 " "4。2系统设计 " "4.2.1 概念结构设计 " "概念结构设计是对现实世界的一种抽象。E—R图分为实体和属性,每个实体可以有多 " "个属性,不同实体间可以用关系连接.实体与实体之间的联系有一对一联系,一对多联" "系,多对多联系. " "用户实体及属性 " "用户实体及属性如图1 " "图1 用户实体及属性 " "分房要求及属性 " "分房要求及属性如图2 " "图2 分房要求及属性 " "(3)调房要求及其属性 " "调房要求及属性如图3 " "图3 调房要求及属性 " "(4)退房要求及属性 " "退房要求及属性如图4 " "图4 退房要求及属性 " "(5)住房文件及属性 " "住房文件及属性如图5 " "图5 住房文件及属性 " "(6)总体E—R图 " "总体E-R图如图6 " "图6 总体E—R图 " "4。2。2 逻辑结构设计 " "将E—R图转换为关系模型,将E—R图转换为关系模型就是将实体,实体的属性及实体间" "的联系转换为关系模式. " "用户信息表(户主,房号,部门,职称,人口) " "住房要求(户主,面积,要求) " "住房文件(户主,职称,部门,人口,分数,房号,住房面积) " "分房要求(户主,部门,职称,人口,分数,要求面积) " "退房要求(部门,房号) " "调房要求(户主,部门,职称,人口,分数,房号,要求面积) " "4.2。3 物理结构设计 " "(1)用户信息表 " "字段名称 " "类型(长度) " "约束 " "属性 " " " "户 主 " "char (500) " "不许为空 " "主码 " " " "职 称 " "char (20) " "不许为空 " "非主属性 " " " "部 门 " "char (20) " "不许为空 " "非主属性 " " " "房 号 " "char (10) " "可以为空 " "非主属性 " " " "人 口 " "int " "不许为空 " "非主属性 " " " "(2)住房要求表 " "字段名称 " "类型(长度) " "约束 " "属性 " " " "户 主 " "char (500) " "不可为空 " "主码 " " " "申请面积 " "char (10) " "可以为空 " "非主属性 " " " "要 求 " "char (100) " "可以为空 " "非主属性 " " " "(3)分房要求表 " "字段名称 " "类型(长度) " "约束 " "属性 " " " "户 主 " "char (500) " "不可为空 " "主码 " " " "要求面积 " "char (10) " "不可为空 " "非主属性 " " " "分 数 " "int " "不可为空 " "非主属性 " " " "人 口 " "int " "不可为空 " "非主属性 " " " "(4)调房要求表 " "字段名称 " "类型(长度) " "约束 " "属性 " " " "户 主 " "char (500) " "不可为空 " "主码 " " "
软 件 学 院 课程设计报告书 课程名称 数据库课程设计 设计题目 房产管理系统 专业班级 学 号 姓 名 指导教师 2014 年 6 月 目录 1 设计时间 1 2 设计目的 1 3 设计任务 1 4 设计内容 1 4.1 需求分析 4 4.2概念结构设计 4 4.3逻辑结构设计…………………………………………………………………………….……..7 4.4物理结构设计 7 5 总结与展望 13 参考文献 14 成绩评定……………………………………………………………………14 "1 设计时间 " "2014年6月23日—6月26日 " "2 设计目的 " "本次课程设计的目的在于加深对数据库基本知识的理解,掌握使用数据库进行软件设" "计的基本方法,提高理论联系实际问题的能力,最终实现一个房产管理系统,方便用" "户使用,此系统具有分房、调房、退房和咨询统计的功能。使之能够有效地存储数据" ",满足各种用户的应用需求。 " "3设计任务 " "设计一个具有分房、调房、退房和统计功能的房产管理系统。方便房产科管理各个房" "产。使散乱的档案能够更加具体,直观,合理。本软件适用于不同的房地产商家,是" "一个比较完善的系统管理软件。我设计的系统中包括用户信息表,住房要求表,住房" "文件表,分房要求表,退房要求表,调房要求表。 " "4 设计内容 " "4.1需求分析 " "人工管理存在不可避免的人为因素造成数据的遗漏、误报等弊端。为了解决这一问题" ",针对房产信息管理工作开发了房产管理系统。该系统可以很好的解决人工的弊端," "通过系统进行管理,可以提高工作效率,适应用户的各种要求。 " "4.2系统设计 " "4.2.1 概念结构设计 " "概念结构设计是对现实世界的一种抽象。E-R图分为实体和属性,每个实体可以有多 " "个属性,不同实体间可以用关系连接。实体与实体之间的联系有一对一联系,一对多" "联系,多对多联系。 " " " "用户实体及属性 " "用户实体及属性如图1 " " " " " " " "图1 用户实体及属性 " " " "分房要求及属性 " "分房要求及属性如图2 " " " "图2 分房要求及属性 " "(3)调房要求及其属性 " "调房要求及属性如图3 " " " " " "图3 调房要求及属性 " "(4)退房要求及属性 " "退房要求及属性如图4 " " " " " "图4 退房要求及属性 " "(5)住房文件及属性 " "住房文件及属性如图5 " " " "图5 住房文件及属性 " "(6)总体E-R图 " "总体E-R图如图6 " " " "图6 总体E-R图 " "4.2.2 逻辑结构设计 " "将E-R图转换为关系模型,将E-R图转换为关系模型就是将实体,实体的属性及实体间" "的联系转换为关系模式。 " "用户信息表(户主,房号,部门,职称,人口) " "住房要求(户主,面积,要求) " "住房文件(户主,职称,部门,人口,分数,房号,住房面积) " "分房要求(户主,部门,职称,人口,分数,要求面积) " "退房要求(部门,房号) " "调房要求(户主,部门,职称,人口,分数,房号,要求面积) " "4.2.3 物理结构设计 " "(1)用户信息表 " "字段名称 " "类型(长度) " "约束 " "属性 " " " "户 主 " "char (500) " "不许为空 " "主码 " " " "职 称 " "char (20) " "不许为空 " "非主属性 " " " "部 门 " "char (20) " "不许为空 " "非主属性 " " " "房 号 " "char (10) " "可以为空 " "非主属性 " " " "人 口 " "int " "不许为空 " "非主属性 " " " " " "(2)住房要求表 " "字段名称 " "类型(长度) " "约束 " "属性 " " " "户 主 " "char (500) " "不可为空 " "主码 " " " "申请面积 " "char (10) " "可以为空 " "非主属性 " " " "要 求 " "char (100) " "可以为空 " "非主属性 " " " " " "(3)分房要求表 " "字段名称 " "类型(长度) " "约束 " "属性 " " " "户 主 " "char (500) " "不可为空 " "主码 " " " "要求面积 " "char (10) " "不可为空 " "非主属性 " " " "分 数 " "int " "不可为空 " "非主属性 " " " "人 口 " "int " "不可为空 " "非主属性 " " " " " " " "(4)调房要求表 " "字段名称 " "类型
Python仓库管理系统课设是一个基于Python语言开发的仓库管理系统。该系统的主要目标是帮助仓库管理人员快速、高效地管理仓库物资的进出库、库存数量和库存状态等信息。 该系统的主要功能包括仓库物品的录入、查询、修改和删除等。仓库管理员可以通过该系统录入新的物资信息,包括名称、型号、数量、价格等,并可以对已有物资信息进行查询、修改和删除。同时,系统提供库存查询功能,可以根据物资的名称、型号等信息快速查询物资的库存数量和库存状态,帮助管理员随时掌握仓库的物资情况。 除了基本的物资管理功能外,系统还提供了进出库管理功能。仓库管理员可以通过系统记录物资的入库和出库信息,包括物资的名称、型号、数量、日期等,并自动生成相应的入库和出库单据,方便后续的跟踪和查询。 此外,系统还提供了权限管理功能,可以根据不同的用户角色设置对应的权限。例如,管理员可以拥有对所有功能的完全控制权限,而普通员工只能进行部分功能的操作。 该系统的开发使用了Python语言及其相关的开发框架和库。其中,Python的轻量级Web框架Flask用于搭建系统的前后端交互界面,数据库管理系统MySQL用于存储和管理物资相关的数据。 总的来说,Python仓库管理系统课设是一个实用性较强、功能完善的仓库管理系统。通过使用该系统,仓库管理员可以更加方便地管理和掌控仓库物资的运营情况,提高工作效率和管理水平。同时,系统的开发过程也为学习Python语言和相关技术提供了一个实践的机会,有利于提高学生的实际编程能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_春与修罗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值