Chinaunix首页 | 论坛 | 博客
  • 博客访问: 32035
  • 博文数量: 18
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 210
  • 用 户 组: 普通用户
  • 注册时间: 2014-07-31 10:27
文章分类
文章存档

2015年(10)

2014年(8)

我的朋友

分类: C#/.net

2014-12-09 14:52:44

  软件发布后,如果不希望未经授权的用户使用,可以设置软件密码,启动软件后,必须正确输入密码才能进行后续操作。


  作为教学演示,这里简单地将密码赋值给一个变量,编译后不能更改,如果想更改,必须重新编译。


  用户有3次输入密码的机会,3次输入错误,软件自动退出。通过for循环,连续3次读取用户输入的密码,并与初始密码进行比较,相同则校验通过,否则校验失败。


  请看下面的代码:


  #include #include #include  int checkPwd(); void myExit(char *msg);  int password=123456; // 软件初始密码  int main(){ if(!checkPwd()){ myExit("抱歉,3次输入密码错误。按任意键退出程序…\n"); }  myExit("恭喜你,密码检验成功。按任意键退出程序…\n");  return 0; }  // 校验密码 // 返回 0 表示校验失败,返回 1 表示校验成功 int checkPwd(){ int pwd; //用户输入的密码 int trytimes; // 用户尝试输入密码的次数  printf("程序设置了密码,验证通过后才能使用。请输入6位数字密码:"); // 可以输入三次 for(trytimes=1; trytimes<=3; trytimes++){ scanf("%d",&pwd); fflush(stdin); if(pwd==password){ return 1; break; }else if(trytimes==3){ return 0; }else{ printf("抱歉,密码错误,您还有%d次机会:", 3-trytimes); } } }  // 自定义退出程序函数 // msg 为提示语 void myExit(char *msg){ printf("%s", msg); getch(); exit(1); }
推荐阅读:http://blog.gkong.com/macaubcw_215778.ashx
阅读(302) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~