c语言函数设置密码 c语言函数设置密码怎么设置

C语言程序前怎么加密码

这个简单

创新互联是一家专注于成都网站设计、网站建设与策划设计,昭通网站建设哪家好?创新互联做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:昭通等地区。昭通做网站价格咨询:13518219792

这就就是加密函数

int password()

{

int n=0,a=0;

char mi1[80];

int i=0,a1,a2,a3;

int index=0,m=0;

char str[30];

char user[12];

do{

printf("\n\t************************how are you*****************************\n\n\n");

printf("\t\tplease input the username:");

scanf("%s",user);                  

a1=strcmp(user,"20085126");

if(a1==0)

{

FILE *f1;

if((f1=fopen("1mi.txt","rt"))==NULL) 

printf("Cannot open file strike any key exit!");       

exit(0);

}

rewind(f1);//重定向文件内部指针将文件内部的位置指针重新指向一个流(数据流/文件)的开头

fgets(mi1,7,f1);

do{

printf("\n\t\tplease input the password:");

scanf("%s",str);

printf("\n");

if(!strcmp(str,user))              /*比较密码是否一样*/

m=1;

index++;

if(index3)

{

printf("\n\t*****************************************************\n\n");

printf("\t\tThe error number is more than three times while input the password, exit system!\n");

printf("\n\t*****************************************************\n\n\n");

return 0;

}

}while(m==0);

fclose(f1);

}

}

}

睿尔科技

更新学习资料

C语言学生信息录入系统,有个初始密码为admin现在如何增加一个用户自定义的修改密码函数

//专门注册用户和登录的代码

#include stdio.h

#include stdlib.h

#include string.h

#include stdbool.h

#include windows.h

typedef struct

{

int x;

int y;

}PT_STRUCT;

typedef struct

{

char user[20];

char pw[20];

}USER_STRUCT;

PT_STRUCT pt;

bool LoginSuccess=false;

char CurrentUser[20]={'\0'};

int UserCount=0;

USER_STRUCT* pUser=NULL;

char WorkDir[100]={'\0'};

char DataFile[100]={'\0'};

void setxy(int x, int y)  //设置光标位置 

{

COORD coord = {x, y};

SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);

}

void getxy()             //获取当前光标所在位置 

{

HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);

COORD coordScreen = {0, 0}; //光标位置

CONSOLE_SCREEN_BUFFER_INFO csbi;

if(GetConsoleScreenBufferInfo(hConsole, csbi))

{

pt.x=csbi.dwCursorPosition.X;

pt.y=csbi.dwCursorPosition.Y;

}

}

void input(char* buf)

{

int len=strlen(buf);

int c;

int i=0;

while(1)

{

c=getch();

if(c==8  i==0)

{

continue;

}

if(c==10 || c==13) break;

if(c==8  i0)

{

buf[i-1]='\0';

i--;

getxy();

setxy(pt.x-1,pt.y);

printf(" ");

setxy(pt.x-1,pt.y);

}

else if(i=0)

{

printf("*");

buf[i++]=c;

}

if(i=buf)

{

return;

}

}

}

void GetUserDataFromFile()

{

UserCount=GetPrivateProfileInt("USER","user_count",0,DataFile);

if(pUser!=NULL)

{

free(pUser);

}

pUser=(USER_STRUCT*)malloc(sizeof(USER_STRUCT)*(UserCount+1));

int i;

char ch[5];

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

{

memset(ch,'\0',5);

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

GetPrivateProfileString(ch,"user","",pUser[i].user,20,DataFile);

GetPrivateProfileString(ch,"pw","",pUser[i].pw,20,DataFile);

}

}

void WriteDataToFile()

{

int i;

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

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

WritePrivateProfileString("USER","user_count",t,DataFile);

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

{

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

WritePrivateProfileString(t,"user",pUser[i].user,DataFile);

WritePrivateProfileString(t,"pw",pUser[i].pw,DataFile);

}

GetUserDataFromFile();

}

bool login()

{

if(LoginSuccess==true)

{

printf("\n当前已有用户登录! 重新登录吗?(Y/N)");

char sel;

fflush(stdin);

scanf("%c",sel);

if(sel=='y' || sel=='Y')

{

LoginSuccess==false;

}

else

{

return false;

}

}

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

char pw[20]={'\0'};

printf("\nInput User: ");

fflush(stdin);

scanf("%s",user);

printf("\nInput Password: ");

fflush(stdin);

input(pw);

bool find=false;

int i;

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

{

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

{

find=true;

LoginSuccess=true;

strcpy(CurrentUser,pUser[i].user);

break;

}

}

if(find==true)

{

return 1;

}

else

{

return 0;

}

}

bool regist(char* ErrBuf)

{

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

char pw1[20]={'\0'};

char pw2[20]={'\0'};

printf("\nInput User: ");

fflush(stdin);

scanf("%s",user);

int i;

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

{

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

{

strcpy(ErrBuf,"User Repeat");

return false;

}

}

printf("\nInput Password: ");

fflush(stdin);

input(pw1);

printf("\nReInput Password: ");

fflush(stdin);

input(pw2);

if(strcmp(pw1,pw2)!=0)

{

strcpy(ErrBuf,"Password Differ");

return false;

}

strcpy(pUser[UserCount].user,user);

strcpy(pUser[UserCount].pw,pw1);

UserCount++;

return true;

}

int main()

{

_getcwd(WorkDir,100); //取得当前程序的绝对路径

strcpy(DataFile,WorkDir);

strcat(DataFile,"\\user.dat");

if(access(DataFile,0))

{

printf("\n用户数据文件不存在, 按任意键将创建文件");

getchar();

FILE* fp;

fp=fopen(DataFile,"wb");

int re=fputs("[USER]\nuser_count=0",fp);

if(re=0)

{

printf("\n用户数据文件创建成功!");

}

else

{

printf("\n用户数据文件创建失败!");

}

getchar();

fclose(fp);

}

GetUserDataFromFile();

while(1)

{

system("cls");

printf("已注册用户%d\n",UserCount);

if(LoginSuccess==true)

{

printf("Logined User : %s",CurrentUser);

}

printf("\n-------------------------------");

printf("\n登录---1");

printf("\n注册---2");

printf("\n退出---3");

printf("\n-------------------------------");

printf("\n\nInput:(1,2,3) : ");

fflush(stdin);

int sel;

bool re;

char ErrBuf[50]={'\0'};

scanf("%d",sel);

switch(sel)

{

case 1:

re=login();

if(re==true)

{

printf("\nLogin Success! Current User: %s",CurrentUser);

fflush(stdin);

getchar();

}

else

{

printf("\nLogin Fail!");

fflush(stdin);

getchar();

}

break;

case 2:

memset(ErrBuf,'\0',50);

re=regist(ErrBuf);

if(re!=true)

{

printf("%s Register Fail!",ErrBuf);

fflush(stdin);

getchar();

}

else

{

WriteDataToFile();

printf("\nRegister Success!");

fflush(stdin);

getchar();

}

break;

case 3:

exit(0);

break;

default:

break;

}

}

return 0;

}

c语言用调用函数写登录密码

可以定义两个字符数组;

一个存放正确密码;

另一个数组内的内容由用户输入;

调用strcmp函数,若返回值为0则说明两者完全相等;

列子:

char a[10]="4488" //保存正确密码

char b[10];

gets(b) //用户输入

if(strcmp(a,b)==0)

printf(" 匹配成功 ");

else

printf("匹配失败");

更多追问追答

追问

#include

void main()

{

char a[10]="8844";

char b[10];

gets(b)

if(strcmp(a,b)==0)

printf("yes");

else

printf("no");

getch();

请问,用C语言如何实现密码输入?

c语言中可采用getch()函数来实现输入密码字符时,不显示字符到终端上,这时,只需要显示出一个相应的*就可以达到效果了。参考代码及运行效果如下图:


名称栏目:c语言函数设置密码 c语言函数设置密码怎么设置
网站地址:http://hbruida.cn/article/dogijsg.html