作品分享

密码登录.c
此处下载源文件
没啥技术含量
差不多能用

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<conio.h>
#include<windows.h>
#include<time.h>
void color(int x);
int password(int admin);
void resetpasswd();
int  adminpasswd();
int main(){
    int flag,flag2,admin;
    admin=adminpasswd();
    start:
    flag=password(admin);
    if(flag){
    for(;;){
    system("cls");
    //此for中写菜单和调用功能函数
    }
    }else{
    color(9);
    printf("程序将在3秒后退出\n");
    color(4);
    printf("若不想退出请按任意键.......\n");
    time_t time1,time2;
    time(&time1);
    while(1){
        time(&time2);
        if((time2-time1)>3)
        return ;
        if(kbhit()){
        getch();
        goto start;}
    }}
    printf("感谢您的使用!");
    return 4399;
}
//设置字体颜色具体颜色参数可百度 
void color(int x){
    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),x);
}
//判断密码是否正确
//第一次进入显示设置密码
//设置密码后使用密码登录
//忘记密码使用管理员密码更改登录密码
int password(int admin){
    int passwd,passwd2,flag,choice;
    FILE *fp;
    start2:
    if((fp=fopen("passwd.txt","r"))==NULL){
        fclose(fp);
        color(4);
        printf("第一次打开程序请设置您的密码!\n");
        color(4);
        printf("请输入密码: ");
        scanf("%d",&passwd);
        if((fp=fopen("passwd.txt","w"))==NULL)
            printf("设置密码异常!");
        fprintf(fp,"%d",passwd);
        fclose(fp);
        goto start2;
    }else{
        fp=fopen("passwd.txt","r");
        fscanf(fp,"%d",&passwd);
        fclose(fp);
        color(15);
        printf("请输入登录密码:");
        scanf("%d",&passwd2);
        color(4);
        if(passwd==passwd2){
        printf("密码正确!\n");
        return 1;
        }
        else{
        printf("密码错误!\n");
        color(15);
        printf("是否需要重设密码?\n");
        printf("1.重设密码\n");
        printf("2.退出程序\n");
        scanf("%d",&choice);
        if(choice==1){
            printf("若忘记管理员密码可修改adminpasswd.txt文件修改密码\n");
            printf("请输入管理员密码以更改登录密码!\n");
            scanf("%d",&passwd2);
            if(passwd2==admin){
                printf("管理员密码正确!\n");
                resetpasswd();
                color(4);
                printf("密码修改成功!\n");
                goto start2;
            }else{
                printf("管理员密码错误!\n");
                return 0;
            }
        }else{
         return 0;
        }}}}
//更改登录密码 
void resetpasswd(){
    int passwd;
    FILE *fp;
    color(15);
    printf("请输入新的登录密码!\n");
    scanf("%d",&passwd);
    fp=fopen("passwd.txt","w");
    fprintf(fp,"%d",passwd);
    fclose(fp);
}
//第一次进入设置默认管理员密码
//加载管理员密码 
int adminpasswd(){
    FILE *fp;
    int passwd;
    if((fp=fopen("adminpasswd.txt","r"))==NULL){
        fclose(fp);
        printf("无管理员密码!\n");
        printf("设置为默认管理员密码!\n");
        fp=fopen("adminpasswd.txt","w");
        fprintf(fp,"%d",666666);//此处为管理员密码 
        fclose(fp);
    }
    else{
        fp=fopen("adminpasswd.txt","r");
        fscanf(fp,"%d",&passwd);
        fclose(fp);}
        return passwd;
}

code by HG

This is just a placeholder img.