验证码-C
- main.c 文件
- randomcode_send.c文件
涉及知识点:用到了extern(全局变量)、自定义函数。
(另打印验证码也可以使用指针打印)
main.c 文件
/*根据系统给出的随机6位验证码输入正确的验证码,3次错误即锁定退出*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
extern char codesave[6];
randomcode(void);
int main()
{
//char *ptr_code=&codesave;
int i;
char ucode[6];//用户验证码
int n=3;//输入次数
int flag=0;
/*printf("\n系统输出的验证码是:");//另一种呈现验证码的打印方式
for(i=0;i<6;i++)
{
printf("%c",*(ptr_code++));
}
*/
while(n)
{
randomcode();
printf("\n请输入验证码:(目前第%d次机会)",n);
scanf("%s",&ucode);
if(strcmp(ucode,codesave)==0)
{
printf("输入正确!进入系统!\n");
flag=1;
break;
}
else
{
printf("输入错误,请重新输入!\n");
}
n--;
}
if(flag==0)
{
printf("账户锁定!\n");
}
return 0;
}
randomcode_send.c文件
#include <stdio.h>
#include <time.h>
#include <strings.h>
char codesave[6];
randomcode(void)
{
int i;//循环次数
int k;//随机元素下标
int lc;//codes长度
char codes[]="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
lc=strlen(codes);
srand((unsigned)time(NULL));
for(i=0;i<6;i++)
{
k=rand()%lc;//生成0到(长度-1)个数
codesave[i]=codes[k];
}
printf("系统输出的验证码是:");
for(i=0;i<6;i++)
{
printf("%c",codesave[i]);
}
}
更多推荐
C语言自学路之验证码
发布评论