IO DAY2

IO DAY2_第1张图片

 

#include
//定义注册函数***************************************************
int do_register()
{
    //以追加的形式打开文件
    FILE *wfp = 0;
    char name[20];
    char pwd[20];
    printf("请输入注册账号:");
    fgets(name,sizeof(name),stdin);
    name[strlen(name)-1] = 0;
    printf("请输入注册密码:");
    fgets(pwd,sizeof(pwd),stdin);
    pwd[strlen(pwd)-1] = 0;
    //打开文件
    if((wfp = fopen("./usr.txt","a+")) == 0)
    {
        perror("fopen");
        return -1;
    }

    //将注册账号和密码写入到文件中
    fprintf(wfp,"%s %s\n",name,pwd);
    //关闭文件
    fclose(wfp);
    printf("注册成功\n");
}
//定义登录函数*****************************************************
int do_login()
{
    //定义容器,存放账号密码
    char input_name[20];
    char input_pwd[20];
    char file_name[20];
    char file_pwd[20];
    FILE *rfp = 0;
    printf("请输入登录账号:");
    fgets(input_name,sizeof(input_name),stdin);
    input_name[strlen(input_name)-1] = 0;
    printf("请输入登录密码:");
    fgets(input_pwd,sizeof(input_pwd),stdin);
    input_pwd[strlen(input_pwd)-1] = 0;
    //打开文件
    if((rfp = fopen("./usr.txt","a+")) == 0)
    {
        perror("fopen");
        return -1;
    }
    
    while(1)
    {
        int res = fscanf(rfp,"%s %s",file_name,file_pwd);
        if(res <0)
        {
            printf("登录失败\n");
            return 1;
        }
        if(strcmp(input_name,file_name) == 0 &&strcmp(input_pwd,file_pwd) == 0)
        {
            printf("登录成功\n");
            return 0;
        }
    }

}

/******************************* 主程序 **********************************/
int main(int argc, const char *argv[])
{
    char menu;
    while(1)
    {
        printf("\t\t==== 1 注册 ====\n");
        printf("\t\t==== 2 登录 ====\n");
        printf("\t\t==== 0 退出 ====\n");

        printf("请输入选项:");
        scanf("%c",&menu);
        while(getchar() != '\n');
        switch(menu)
        {
            case'1':
                {
                    do_register();
                }
                break;
            case'2':
                {
                    do_login();
                }
                break;
            case'0':
                exit(EXIT_SUCCESS);

            default:printf("输入有误,请重新输入!!!\n");
        }
    
        printf("输入任意键按回车清屏!!!\n");
        while(getchar() != '\n');
        system("clear");
    }
    
    
    return 0;
}

IO DAY2_第2张图片

你可能感兴趣的:(C)