C语言 增加一个输入三次密码错误 请联系管理员

#include <stdio.h>
#include <string.h>
int main()
{
char username[15],pwd[15];
printf("\n 请输入用户名: " );
gets(username);
printf("\n 请输入密码: ");
gets(pwd);
if((strcmp(username,"John")==0) &&
(strcmp(pwd,"123456")==0))
printf("\n 您已成功登录 \n ");
else
printf("\n 用户名和/或密码无效 \n ");
}

第1个回答  2013-10-25

#include <stdio.h>
#include <string.h>
int main()
{
char username[15],pwd[15];
printf("\n 请输入用户名: " );
gets(username);

int i=0;

while(i<3)

{
    printf("\n 请输入密码: ");
    gets(pwd);
    if((strcmp(username,"John")==0) &&
                                (strcmp(pwd,"123456")==0))

    {
        printf("\n 您已成功登录 \n ");

        break;

    }
    else
    {

        printf("\n 用户名和/或密码无效 \n ");

        i++;

    }

}
}


第2个回答  2013-10-25
#include <stdio.h>
#include <string.h>
int main()
{
char username[15],pwd[15];
int i = 0;
printf("\n 请输入用户名: " );
gets(username);
printf("\n 请输入密码: ");

while(++i <= 3)
{
gets(pwd);
if((strcmp(username,"John")==0) &&
(strcmp(pwd,"123456")==0))
{
printf("\n 您已成功登录 \n ");
break;
}
else
printf("\n 用户名和/或密码无效 \n "); 

if (i<3)
{
printf("\n 请重新输入密码,你还有%d次机会\n ",3-i); 
}
else
{
            printf("\n 三次输入密码错误 请联系管理员\n "); 
}

}

}

本回答被提问者采纳
第3个回答  2013-10-25
#include <stdio.h>

#include <string.h>

int main()

{

char username[15],pwd[15];

         int i; 
        for(i=0;i<3;i++){ 
printf("\n 请输入用户名: " );

gets(username);

printf("\n 请输入密码: ");

gets(pwd);

if((strcmp(username,"John")==0) &&

                                 (strcmp(pwd,"123456")==0))

{ printf("\n 您已成功登录 \n ");break;}

else 
printf("\n 用户名和/或密码无效 \n "); 
         }  
 
        if(i>=3){
            printf("\n输入三次密码错误 请联系管理员 \n "); 
 
        }  
  
  }

第4个回答  2013-10-25
#include <stdio.h>
#include <string.h>
int main()
{
    if (isLoginOK()) /* doWork() */;
    return 0;
}

int isLoginOK()
{
char username[15],pwd[15];
int n = 3;
while (n-- > 0)
{
printf("\n 请输入用户名: " );
gets(username);
printf("\n 请输入密码: ");
gets(pwd);
if((strcmp(username,"John")==0) &&
                                 (strcmp(pwd,"123456")==0))
{ printf("\n 您已成功登录 \n "); return 1; }
else
printf("\n 用户名和/或密码无效 \n "); 
}
printf("三次密码错误 请联系管理员\n");
return 0;
}

第5个回答  2013-10-25
增加一个for循环,
for (int i=0;i<3;++i )
{
char username[15],pwd[15];
printf("\n 请输入用户名: " );
gets(username);
printf("\n 请输入密码: ");
gets(pwd);
if((strcmp(username,"John")==0) && (strcmp(pwd,"123456")==0))
{
printf("\n 您已成功登录 \n ");
break; ////////跳出for循环
}
else
{
printf("\n 用户名和/或密码无效 \n ");
if (2==i) ////////0、1、2三次
printf("\n 请联系管理员! \n ");
}

}
相似回答