Bella_Notte 2022-09-06 09:06 采纳率: 88.9%
浏览 53
已结题

c语言的一个模拟密码登陆情景的问题

本人刚开始学c语言。
我想做一个“编写代码实现,模拟用户登录情景,并且只能登录三次。(只允许输入三次密码,如果密码正确则提示密码成功,如果三次均输入错误,则退出程序”的任务,但不知道为什么运行不了

int main(void)
{
//假设正确的密码是123456
int a = 0;
char password[20] = { 0 };
for (a = 0; a< 3; a++)
{
printf("请输入密码:");
scanf_s("%s", &password);
//两个字符串比较不能用 == ,应该用strcmp
if (strcmp(password, "123456") == 0)
{
printf("登陆成功\n");
break;
}
else
{
printf("密码错误\n");
}
}
if (a == 3)
{
printf("三次密码均错误,退出程序");
}
}

运行结果:

img

  • 写回答

1条回答 默认 最新

  • 叶落秋白 优质创作者: 后端开发技术领域 2022-09-06 09:17
    关注

    你用的是vs吧,不如在程序头部加上这行代码:#define _CRT_SECURE_NO_WARNINGS
    然后把scanf_s换成scanf

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月14日
  • 已采纳回答 9月6日
  • 创建了问题 9月6日