如果想要三次机会,把代码中的tmsuser和tmspwd分别初始化为3即可,当前代码中设置为1。代码如下,如有帮助,请采纳一下,谢谢。
#include <stdio.h>
#include <string.h>
int main()
{
char* user[] = {"a","b","c"};
char* pwd[] = {"111","222","333"};
//tmsuser表示用户名有几次输入机会,如需要3次机会,设为3即可
//tmspwd表示密码有几次输入机会,如需要3次机会,设为3即可。
int i,tmsuser = 1,tmspwd = 1;
char name[20] = {0};
char ps[20] = {0};
int flag = 0;
while(tmsuser > 0)
{
flag = 0;
printf("请输入用户名:");
scanf("%s",name);
for(i = 0; i < 3; i++)
{
if(strcmp(name,user[i])== 0)
{
flag =1;
break;
}
}
if (flag)
break;
else
{
//printf("用户不存在\n");
tmsuser--;
}
}
if (tmsuser == 0)
{
printf("用户不存在\n");
return 0;
}
while(tmspwd > 0)
{
flag = 0;
printf("请输入密码:");
scanf("%s",ps);
if(strcmp(ps,pwd[i])== 0)
{
flag =1;
break;
}
if (flag)
break;
else
{
//printf("用户不存在\n");
tmspwd--;
}
}
if (tmspwd == 0)
{
printf("密码错误\n");
return 0;
}
printf("欢迎!\n");
return 0;
}