用户登入系统的c语言代码大全,C语言 登录系统代码.doc

44cb7578e1df5412b94317daaa3307ba.gifC语言 登录系统代码.doc

include #include typedef struct char name100;char pw100;uifo;#define USER_FILE data.bin#define DEFAULT_NAME guest#define DEFAULT_PW 123void write_data(uifo *info)unsigned char len;FILE *fp;fp = fopen(USER_FILE, wb);if(fp = NULL) printf(can not open file n);return;len = strlen(info-name);fwrite(&len, 1, 1, fp);fwrite(info-name, 1, len, fp);len = strlen(info-pw);fwrite(&len, 1, 1, fp);fwrite(info-pw, 1, len, fp);fclose(fp);void read_data(uifo *info)FILE *fp;unsigned char len;fp = fopen(USER_FILE, rb);if(fp = NULL)strcpy(info-name, DEFAULT_NAME);strcpy(info-pw, DEFAULT_PW);write_data(info);elsememset(info, 0, sizeof *info);fread(&len, 1, 1, fp);fread(info-name, 1, len, fp);fread(&len, 1, 1, fp);fread(info-pw, 1, len, fp);fclose(fp);int main()uifo info;char pw100=0, pw_confirm100=0;int wt = 0;memset(&info, 0, sizeof info);read_data(&info);printf(welcome! please loginn);while(1)printf(please input your user namen);scanf(%s, pw);if(strcmp(pw, info.name) != 0) printf(no such user namen);continue;printf(please input your passwordn);scanf(%s, pw);if(strcmp(pw, info.pw) != 0) printf(password errorn);else break;wt +;if(wt = 3)printf(3 times password error, exit!n);return -1;while(1)int i;printf(input 1 to change your passwordninput 0 to exitn);scanf(%d, &i);if(i = 0) break;if(i = 1)while(1)printf(please input your original passwordn);scanf(%s, pw);if(strcmp(pw, info.pw) != 0)printf(original password is not correctn);continue;printf(please input your new passwordn);scanf(%s, pw);printf(please confirm your new passwordn);scanf(%s, pw_confirm);if(strcmp(pw, pw_confirm) != 0) int j;printf(the new passwords are not same in two times input!n);while(1)printf(input 1 to change password againninput 2 to back to last stepninput 0 to exitn);scanf(%d, &j);if(j = 0) return -2;if(j = 1 | j = 2) break;printf(unknown inputn);if(j = 2) break;continue;strcpy(info.pw, pw);write_data(&info);break;else printf(unknown input, should be 0/1n);printf(Bye!n);return 0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值