dabinge 发表于 2020-11-26 15:41:20

java的简单练习题不会做。。。

模拟银行卡密码输入验证功能,共有三次输入机会。输入字符串类型的数字密码,验证密码是否等于121234,若是则输出“登录成功”,若不是,前两次返回“输入不正确,请重新输入”,第三次输入不正确返回“密码输入已达上限,请明日再试”。

求大佬帮帮我。。

tusumili 发表于 2020-11-28 20:36:23

写个for循环,开启程序后进入第一次循环,用户先输入数据,程序接收数据,判断是否相等,不等于则输出“重新输入”然后continue,进入第二次循环,提示用户输入,用户输入数据,if判断数据是否正确,不正确就输出错误提示然后continue,如果输入正确,提示登陆成功,break,跳出循环,程序结束。所以写个能够遍历三次的for循环,一个if..else就可以了

eternalsc 发表于 2020-12-1 13:24:31

如图

slience_缄默 发表于 2020-12-2 16:14:26

递归实现,这个感觉比循环三次要好一些import java.util.Scanner;

public class Login {

   private int count = 0;

   private String passWord = "121234";

    public static void main(String[] args) {
      Login login = new Login();
      login.logOn();
    }

    private void logOn(){
      Scanner scanner = new Scanner(System.in);
      System.out.println("请输入密码");
      String key = scanner.next();
      if(passWord.equals(key)){
            System.out.println("登录成功");
      }else{
            count ++;
            if(count ==3){
                System.out.println("密码输入已达上线,请明日再试");
                return;
            }
            System.out.println("输入不正确,请重新输入");
            logOn();
      }
    }

}

连帅帅 发表于 2020-12-10 18:02:11

本帖最后由 连帅帅 于 2020-12-10 18:03 编辑


//方式一:
public void test(){
      int i = 3;
      Scanner scanner = new Scanner(System.in);
      while (i != 0){
            System.out.println("请输入密码:");
            String next = scanner.next();
            if(next.equals("121234")){
                System.out.println("登陆成功!");
                break;
            }else
                System.out.println("密码错误,你还有"+(i-1)+"次机会!");
            i--;
      }
    }
//方式二:
public void test(){
      Scanner scanner = new Scanner(System.in);
      for (int i = 3 ; i > 0 ; i--){
            System.out.println("请输入密码:");
            String next = scanner.next();
            if(next.equals("121234")){
                System.out.println("登陆成功!");
                break;
            }else
                System.out.println("密码错误,你还有"+(i-1)+"次机会!");
      }
    }

大饼卷万物 发表于 2020-12-30 10:15:22

a ="密码"
for(int i =1;i<4;i++){
                System.out.println("请输入密码:");
                String b=sc.next();
                if(b.equals (a)){
                        System.out.println("登陆成功");
                        break;
                }else{
                        if(i<3){
                                System.out.println("密码错误,请重新输入!");
                        } else {
                                System.out.println("三次已过,请明日再来尝试");
                        }
                }
//这是判断的主要方法.
在这里的重点是在于两个字符串怎么样会相等,在这里两个字符串相等用的是String中的方法是equals,而不是“==”
页: [1]
查看完整版本: java的简单练习题不会做。。。