输入首字母判断周几(有瑕疵) 练习

import java.io.IOException; 
public class Week {
        static String w1="周一",w2="周二",w3="周三",w4="周四",w5="周五",w6="周六",w7="周日";
    /**
     * @param args
     * @throws IOException 
     */
    public static void main(String[] args) throws IOException {
        // TODO Auto-generated method stub
        do{
        System.out.println("请输入星期几的首字母,我来判断是周几");
        char w=(char)System.in.read();
        if(w=='m'||w=='M'){
            System.out.println("应该是周一");
            break;}
        else if(w=='w'||w=='W'){
            System.out.println("应该是周三");
            break;}
        else if(w=='f'||w=='F'){
            System.out.println("应该是周五");
            break;}
        else if(w=='t'||w=='T'){
            do{
            System.out.println("应该是周二或周四请继续输入第二字母");
            char s=(char)System.in.read();
            if(s=='u'||s=='U'){
                System.out.println("应该是"+w2);
                break;
                }
            else if(s=='h'||s=='H'){
                System.out.println("应该是"+w4);
                break;}
            else{System.out.println("请正确输入");}
            }while(true);
            break;}
        else if(w=='s'||w=='S'){
            do{
            System.out.println("应该是周六或周日请继续输入第二字母");
            char s=(char)System.in.read();
            if(s=='a'||s=='A'){
                System.out.println("应该是"+w6);
                break;
                }
            else if(s=='u'||s=='U'){
                System.out.println("应该是"+w7);
                break;}
            else{System.out.println("请正确输入");}
            }while(true);
            break;}
        else{System.out.println("请正确输入");}
        }while(true);
    }
}

为什么会循环三次再等待输入

posted @ 2014-10-29 20:57  mimimimimi君  阅读(467)  评论(0编辑  收藏  举报