当前位置: 代码迷 >> J2SE >> 关于循环的一个有关问题请问下众大神
  详细解决方案

关于循环的一个有关问题请问下众大神

热度:122   发布时间:2016-04-24 01:50:57.0
关于循环的一个问题请教下众大神

import java.util.Scanner;

public class Test2 {
public static void main(String[] args) {
int a;
Scanner input = new Scanner(System.in);
System.out.println("请输入月份:");
a = input.nextInt();
do if (a <= 12) {
switch (a) {
case 1:
case 2:
case 3:
System.out.println("春天");
break;
case 4:
case 5:
case 6:
System.out.println("夏天");
break;
case 7:
case 8:
case 9:
System.out.println("秋天");
break;
case 10:
case 11:
case 12:
System.out.println("冬天");
break;
}
}else{
System.out.println("输入错误,请重新输入:");
}wihle
}
}
我想让大于13的数进入else,并重新输入,是用do-wihle循环么?
求指点!!!谢谢啦!!!

------解决方案--------------------
Java code
import java.util.*;public class Test {    public static void main(String[] args) {        int a=0;        Scanner input = new Scanner(System.in);        System.out.println("请输入月份:");        do {            a = input.nextInt();            if(a>12||a<1){                System.out.println("输入错误,请重新输入:");            }            else{                break;            }        } while (true);        switch (a) {            case 1:            case 2:            case 3:                System.out.println("春天");                break;            case 4:            case 5:            case 6:                System.out.println("夏天");                break;            case 7:            case 8:            case 9:                System.out.println("秋天");                break;            case 10:            case 11:            case 12:                System.out.println("冬天");                break;        }    }}
------解决方案--------------------
if(a>0&&a<13)
{
if(a<=6) 
{
if(a<=3) System.out.println("春天");
else System.out.println("夏天");
}
else 
{
if(a<=9) System.out.println("秋天");
else System.out.println("冬天");
}
}
else System.out.println("输入有误!");



循环这样的话,会比较简洁点
------解决方案--------------------
public class Suilian4 {
public static void main(String[] args) {
int a;
Scanner input = new Scanner(System.in);
System.out.println("请输入月份:");
a = input.nextInt();
while(a<0||a>13){//加一个while循环判断输入的月份是否在范围之内,不在范围之内循环再次输入
System.out.println("输入错误,请重新输入:");
System.out.println("请输入月份:");
a = input.nextInt();
break;
}
switch (a) {
case 1:
case 2:
case 3:
System.out.println("春天");
break;
case 4:
case 5:
case 6:
System.out.println("夏天");
break;
case 7:
case 8:
case 9:
System.out.println("秋天");
break;
case 10:
case 11:
case 12:
System.out.println("冬天");
break;
}
}

}

  相关解决方案