日期:2014-05-20  浏览次数:20714 次

[java菜鸟求助系列]之For循环练习题
题目: for循环的习题!
       系统对用户输入的用户名和密码进行验证,验证次数最多三次,超过三次则程序结束。
       并且根据验证结果的不同,执行不同的操作。如图:

我现在不知道怎样去显示“对不起,您3次均输入错误这个信息”。
下面是我写的代码:
/*用户登录验证
 * 验证次数最多3次
 * 并且在验证3次均输入错误之后,打印“输入错误,您还有0次机会!”
 *      “对不起,您3次均输入错误!”
 */
import java.util.Scanner;

public class ForHomeWork3 {
public static void main(String[] args) {
String name = ""; // 定义用户名
int passWord = 0; // 定义用户密码
int temp = 0; // 定义输入次数
Scanner input = new Scanner(System.in);
for (int i = 1; i <= 3; i++) {
System.out.println("请输入用户名:");
name = input.next();
System.out.println("请输入密码:");
passWord = input.nextInt();
if (!"zhounan".equals(name) && passWord != 123456) {
System.out.println("输入错误,您还有" + (3 - i) + "次机会!");
continue;
} else
System.out.println("欢迎登陆Myshopping系统!");
break;
}

}

}

------解决方案--------------------
    public static void main(String[] args) {
        String name = ""; // 定义用户名
        int passWord = 0; // 定义用户密码
        int temp = 0; // 定义输入次数
        Scanner input = new Scanner(System.in);
        for (int i = 1; i <= 3; i++) {
            System.out.println("请输入用户名:");
            name = input.next();
            System.out.println("请输入密码(密码为数字):");
            passWord = input.nextInt();
            if (!"zhounan".equals(name) && passWord != 123456) {
                System.out.println("输入错误,您还有" + (3 - i) + "次机会!");
                if(i==3&&!"zhounan".equals(name) && passWord != 123456){
                 System.out.println("对不起,您3次均输入错误这个信息");
                }
                continue;
            }else{
             System.out.println("欢迎登陆Myshopping系统!");
            }
            break;
        }
 
    }