题目:编写代码实现,模拟用户登录情景,并且只能登录三次。(只允许输入三次密码,如果密码正确则提示登录成,如果三次均输入错误,则退出程序。)
先上代码:
#include <stdio.h>
#include <string.h>
int main()
{
int i = 0;
char password[20] = { 0 };
for (i = 0; i < 3; i++)
{
printf("请输入密码:");
scanf("%s", password);
if (strcmp(password, "abcdef") == 0)
{
printf("密码输入正确!");
break;
}
else
{
printf("密码输入错误!\n请重新输入:");
}
}
if (i == 3)
{
printf("三次密码输入错误,退出程序!");
}
return 0;
}
代码在运行时需要进行3次,假设密码为abcdef,输入的密码与abcdef比较,如果一样,则打印密码输入正确,并跳出循环;如果不一样,则打印密码输入错误重新输入。如此三次,同样跳出循环,但是最后如果此时的i为3时,那么则需打印:三次密码输入错误,退出程序!
细节方面:需要注意的是在比较字符串是否一样时,不是单纯的是否相等:if(password==“abcdef”),而是采用strcmp函数,这个函数是用于比较字符串是否相等用的,如果两个字符串相等,那么返回值为0,如果第一字符大于第二个字符串则返回值大于0,如果第一字符小于第二个字符串则返回值小于0。但是在引用strcmp函数时需要添加头文件<string.h>。
好了,这次的题目分享就到这里,如果有错误望诸君指正,谢谢各位。