gpt4 book ai didi

c - 我需要一个功能,要求用户输入密码,并且在 3 次错误尝试后,他们的程序终止

转载 作者:行者123 更新时间:2023-11-30 17:18:41 26 4
gpt4 key购买 nike

我必须为一个类编写一个 ATM 程序,但我不知道如何创建一个函数来要求用户输入 PIN 码,如果 PIN 码输入错误 3 次,程序将显示退出消息,然后终止....这就是我所有些远的。我认为我的问题是我不知道处理我的问题的正确语法。

我知道我需要一个 for 循环,但不确定如何构造它。

void validate_acc(){
int user_acc_try;

printf("Please enter your account number: ");
scanf("%d", &user_acc_try);

if(user_acc_try != account_number){
printf("You entered the wrong account number");
}
else{
printf("");
}
}

void validate_pin(){
int user_pin_try;

printf("Please enter your pin number: ");
scanf("%d", &user_pin_try);

if(user_pin_try != pin){
printf("You entered the wrong pin number.");
}
else{
printf("");
}
}

void validate(){
validate_acc();
validate_pin();
}

其次,由于我只能每 90 分钟发布一次,不妨问另一个问题,我不知道如何使函数返回到我的程序的开头,例如在存款后说,我的逻辑是什么需要使用一个函数返回到我的主函数的开头。我知道 goto labels,当我把它放在我的主函数前面时,它似乎不起作用...

MAIN:
int main()

我会把goto main;放在另一个函数中,我会得到一个.... Main is not Defined错误。我在这里阅读了一些有关标签的不同问题,但找不到任何有帮助的内容,如果有人可以引导我朝正确的方向前进,你会给我很大的安慰。

提前谢谢您。

最佳答案

如果您无法弄清楚如何在代码中执行此操作,最好为此类事情编写流程图。

请不要在 C 中使用 labels/goto。这是一个令人讨厌的习惯,而且没有必要。

您知道如何使用 if 语句做出决定;想想你会如何使用 while循环尝试一遍又一遍地做出相同的决定,直到事情发生变化。例如,在伪代码中(因为我不想为你做你的工作)

user_has_not_entered_ Correct_pin = true
retries_left = 3
当 retries_left > 0 且 user_has_not_entered_ Correct_pin 时:
获取密码
if pin_is_not_ Correct(pin) 重试 = 重试 - 1
否则 user_has_not_entered_ Correct_pin = false
结束时

关于c - 我需要一个功能,要求用户输入密码,并且在 3 次错误尝试后,他们的程序终止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29104889/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com