c语言登录界面
⑴ 用c语言制作一个登陆界面1 注册 注册以后保存在文件中 2登陆时直接输入用户名和密码登陆
这是一个用纯C语言和文件操作实现的系统的登录、注册和忘记密码功能。可以用于c语... 登录:先输入账号和密码。然后按账号从文件中读取,如果账
⑵ c语言 商品销售系统登入界面该怎么写
登录包括检查数据文件,检测输入格式,检查数据重复性,验证用户名密码。
根据读取写入追加数据的不同要求,fopen选项不同参数,比如"r","w","a"。注意每次用完后用fclose函数关闭数据流。
下面是演示代码:(文件不存在自动创建,登录失败提示注册,输入验证,你自己写,比如:用户名包含几字母数字等)。
#include <stdio.h>
#include <string.h>
#define UFPATH "C:\user.data" //文件路径
#define SMAX 20
typedef struct USER
{
char uName[SMAX];
char pwd[SMAX];
}UR;
UR *logon(char *uName,char *pwd);
int main()
{
UR *ur=NULL;
char uName[SMAX],pwd[SMAX];
printf("请输入用户名及密码: ");
scanf("%s",uName);
scanf("%s",pwd);
if((ur=logon(uName,pwd))==NULL)
printf("登陆失败");
else
printf("欢迎登录!%s ",ur->uName);
return 0;
}
UR *logon(char *uName,char *pwd)
{
int isExcept=1;//标识变量,1:该用户不存在。0:用户名存在
FILE *fp=NULL;
static UR ur;
char c[2];
if((fp=fopen(UFPATH,"r"))==NULL)
{
printf("该路径未发现记录文件,新建文件! ");
if((fp=fopen(UFPATH,"wt"))==NULL)
{
printf("异常!新建文件失败! ");
return NULL;
}
isExcept=1;
}
else
{
while(fscanf(fp,"%s%s",ur.uName,ur.pwd)!=-1)
{
if(strcmp(ur.uName,uName)==0 && strcmp(ur.pwd,pwd)==0)
{
printf("身份验证通过! ");
fclose(fp);
return &ur;
}
}
printf("用户密码不正确,或用户不存在! ");
fclose(fp);
isExcept=1;
}
if(isExcept==1)
{
printf("是否注册用户?(Y/N) ");
scanf("%s",c);
if(c[0]=='N')
return NULL;
if(c[0]=='Y')
{
while(isExcept)
{
printf("请输入要注册的用户名及密码: ");
scanf("%s",uName);
scanf("%s",pwd);//输入验证在这里添加!!!!!!!!!
//------------验证新建的用户名是否重名-------
if((fp=fopen(UFPATH,"r"))==NULL)
{
printf("异常!,文件打开失败! ");
return NULL;
}
isExcept=0;
while(fscanf(fp,"%s%s",ur.uName,ur.pwd)!=-1)
{
if(strcmp(ur.uName,uName)==0)
{
printf("用户名已存在,请重新输入! ");
fclose(fp);
isExcept=1;
break;
}
}
fclose(fp);
//-------------------------------------------------------
}
if((fp=fopen(UFPATH,"a"))==NULL)
{
printf("异常!,文件打开失败! ");
return NULL;
}
fprintf(fp,"%s %s%s",uName,pwd," ");
printf("用户注册成功! ");
strcpy(ur.uName,uName);
strcpy(ur.pwd,pwd);
}
}
fclose(fp);
return &ur;
}
//ps:代码是按照你问题写成一个登录函数,但在一个项目中,对文件的读写改,应写成独立函数调用。其它函数调用这些函数。
⑶ c语言写登录界面 账号密码登录错误三次 管理员登录 员工登录两个
#include<stdio.h>
#include<stdlib.h>
#defineMAXL100
#defineMAX_ERROR_TIME3
interrorTime=0;
intgetLen(chars[]){
intl=0;
for(l=0;s[l]!='