您的位置:

登陆系统c语言,登录界面c语言

本文目录一览:

如何用C语言编程实现用户登录

C语言的话,一般用户信息存储在结构体链表里

你输入用户名回车以后,需要遍历链表,使用strcmp()函数逐一对比链表里是否存储了你输入的用户名。不存在输出“无此用户”,存在继续输入密码,将密码与此结点的密码信息对比,处理方式同用户名;

至少三次输入错误,可设一个整形变量index = 0,每错误一次执行index++,当if(index==3)成立时,输出相应信息,并执行exit(1);

多用户登录系统C语言程序

#include stdio.h

#include stdlib.h

#include "string.h"

#include "windows.h"

int total=0;

struct u_p

{

char user[20];

char pass[20];

} s[50];

void read()

{

total=GetPrivateProfileInt("INFO","count",0,"d:\\Info.dat");

int i;

char t[5]={"\0"};

for(i=0;itotal;i++)

{

sprintf(t,"%d",i+1);

GetPrivateProfileString(t,"USER","",s[i].user,20,"d:\\Info.dat");

GetPrivateProfileString(t,"PASSWORD","",s[i].pass,20,"d:\\Info.dat");

}

}

void input()

{

int p,i=0,count=0,f_u=0,f_p=0;

char user[20]={"\0"};

char password[20]={"\0"};

while(1)

{

f_u=0;

f_p=0;

system("cls");

printf("当前共有%d个注册用户",total); 

printf("\n\n请输入用户名:");

memset(user,'\0',20);

scanf("%s",user);

printf("\n请输入密码:");

memset(password,'\0',20);

i=0;

while(1)

{

p=_getch();

if(p==10 || p==13)

{

break;

}

password[i++]=p;

printf("*");

}

for(i=0;itotal;i++)

{

if(strcmp(s[i].user,user)==0)

{

f_u=1;

if(strcmp(s[i].pass,password)==0)

{

f_p=1;

printf("\n\n欢迎 %s",user);

fflush(stdin);

_getche();

continue;

}

}

}

if(f_u==0)

{

printf("\n\n不存在该用户名! 选 1 重新输入,选 2 注册新用户");

int c=0;

fflush(stdin);

c=_getche();

if(c=='1')

{

continue;

}

else if(c=='2')

{

system("cls");

printf("注册新用户");

printf("\n\n\n请输入用户名:");

memset(user,'\0',20);

scanf("%s",user);

printf("\n请输入密码:");

char temp[20]={"\0"} ;

i=0;

while(1)

{

p=_getch();

if(p==10 || p==13)

{

break;

}

temp[i++]=p;

printf("*");

}

printf("\n请再次输入密码:");

i=0;

memset(password,'\0',20);

while(1)

{

p=_getch();

if(p==10 || p==13)

{

break;

}

password[i++]=p;

printf("*");

}

if(strcmp(temp,password)==0)

{

total++;

char t[5]={"\0"};

sprintf(t,"%d",total);

WritePrivateProfileString("INFO","count",t,"d:\\Info.dat");

WritePrivateProfileString(t,"USER",user,"d:\\Info.dat");

WritePrivateProfileString(t,"PASSWORD",password,"d:\\Info.dat");

printf("\n\n注册成功,请重新登录");

fflush(stdin);

_getch();

count=0;

read();

continue; 

}

else

{

printf("\n\n两次密码不一致,注册失败");

fflush(stdin);

_getch();

count=0;

continue; 

}

}

}

else if(f_p==0)

{

count++; 

if(count=3)

{

printf("\n\n连续输入3次错误,程序将退出");

fflush(stdin);

_getche();

return ; 

}

printf("\n\n密码输入错误,请重新输入");

fflush(stdin);

_getche();

}

}

return ;

}

int main(int argc, char *argv[]) 

{

read();

input();

return 0;

}

C语言用户登录系统账户密码比对

#include stdio.h

#include string.h

typedef struct account{

    char name[32];

    char acc[16];

    char psw[16];

}Acc;

//    data是结构体数组,filename是文件绝对地址,n保存读入的结构体数量 

void GetDataFromTxt(Acc* data, const char* filename, int* n)

{

    FILE *fp = fopen(filename, "r");

    if( NULL == fp ){

        printf("Open file failed or no this file!\n");

        return;

    }

    

    int i = 0;

    while( !feof(fp) )

    {

        fscanf(fp, "%s %s %s", data[i].name, data[i].acc, data[i].psw);

        i++;        

    }

    *n = i;    

}

int main()

{

    int i, n;

    Acc data[100];

    //    获取数据 

    GetDataFromTxt(data, "E:\\secret.txt", n);

    printf("n = %d\n", n);

    printf("姓名    账号          密码\n"); 

    for(i = 0; i  n; ++i)

        printf("%-4s %-16s %-10s\n", data[i].name, data[i].acc, data[i].psw);

        

    //    登录示例 

    putchar('\n');

    char acc[16], psw[16];

    do{

        //    这里只是粗略地写了一个

        //    具体的账号错误或者密码错误自行发挥 

        printf("请输入账号:");

        scanf("%s", acc);

        printf("请输入密码:");

        scanf("%s", psw);

        for(i = 0; i  n; ++i)

        {

            if( strcmp(acc,data[i].acc)==0  strcmp(psw,data[i].psw)==0 ){

                printf("登陆成功!\n");

                break; 

            }

        }

        if( i == n ){

            printf("账号或密码不正确!请重新输入!\n\n"); 

        }else{

            break;

        }        

    }while(1);

    printf("Bye bye!!!\n");     

         

    return 0;

}

C语言编写一个用户登陆的程序?

代码如下:

#includestdio.h

#pragma warning(disable:4996)

#includestring.h

int main()

{

int i = 0;

char password[10] = { 0 };

printf("请输入密码:");

while (i 3)

{

scanf("%s", password);

printf("\n");

if (strcmp(password, "972816") == 0)

{

printf("登录成功\n");

break;

}

else

{

i++;

if (i != 3)

printf("再输入一次");

}

}

if (i == 3)

printf("密码错误三次退出登录界面\n");

system("pause");

return 0;

扩展资料:

#include后面有两种方式,;和""前者先在标准库中查找,查找不到在path中查找。后者为文件路径,若直接是文件名则在项目根目录下查找。

引用方法:#include stdio.h

注意事项:在TC2.0中,允许不引用此头文件而直接调用其中的函数,但这种做法是不标准的。也不建议这样做。以避免出现在其他IDE中无法编译或执行的问题。

参考资料来源:百度百科—include

参考资料来源:百度百科—stdio.h