刚学java,老师布置的一道题,请大家帮忙加工一下,使其完美谢谢!(50分)

  • 主题发起人 主题发起人 richboy2002
  • 开始时间 开始时间
R

richboy2002

Unregistered / Unconfirmed
GUEST, unregistred user!
刚学java,老师布置了一道题:接受用户输入的一个1-12之间的整数(如果输入的数据不满足这个条件,则要求用户重新输入),利用switch语句对应月份的天数!
代码我已写好,问题是如果输入的不是1-12的整数,程序只显示error,please enter the number后就退出了程序,应该如何写个循环后使程序比较完美点?请
大家帮忙修改一下,谢谢!
import java.io.*;
public class appinput
{
public static void main(String args[])
{
String s="1";
System.out.print("please enter the number(1-12):");
try
{
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
s=in.readLine();
}catch(IOException e){}
switch(Integer.parseInt(s))
{
case 1:System.out.print(s+"月份有31天");break;
case 2:System.out.print(s+"月份有28天");break;
case 3:System.out.print(s+"月份有31天");break;
//.........
default: System.out.print("error,please enter the number:");}
}
}
 
wokao! 你做个循环不就得了!! 我看你不该学java,应该先补一补小学一年级的课
 
我刚学语言就学的是java,一点基础都没有,有什么好嘲讽的,你要真想帮忙就写给我看看嘛~
这样的人真是的,哼!
 
你连基本的流程控制都没学??
 
这个论坛上的人怎么这样?既然你们认为很简单,那帮助刚学的人写一下,就几分钟的时间
难道不好吗?偏写点不痛不痒的话,莫非自己也不会吧!这样也想拿分?做梦!
 
import java.io.*;
public class Exam1
{
public static void main(String args[])
{
//System.out.print("Please input the month(1..12):");
try
{
BufferedReader in = new BufferedReader( new InputStreamReader( System.in));
int mo = 0;
String m = new String();
for ( ;
(mo < 1)||(mo > 12) ;
)
{
System.out.print("Please input the month(1..12):");
m = in.readLine();
mo = Integer.parseInt(m);
}
switch (mo)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
System.out.println(m + "Month has 31 days.");
break;
case 4:
case 6:
case 9:
case 11:
System.out.println(m + "Month has 30 days.");
break;
case 2:
System.out.println(m + "Month has 28/29 days.");
default :
}
}
catch (Exception ex)
{
System.out.println("System read error!");
}
}
}
如果你想准确点,就把关于润年的判断也加上吧。
 
//已调试通过
import java.io.*;
public class appinput
{
public static void main(String args[])
{
String s="1";
System.out.print("please enter the number(1-12):");
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
do
{ try
{

s=in.readLine();
}
catch(IOException e){}
switch(Integer.parseInt(s))
{
case 1:System.out.println(s+"月份有31天");break;
case 2:System.out.println(s+"月份有28天");break;
case 3:System.out.println(s+"月份有31天");break;
//.........
default: System.out.print("error,please enter the number:");
}

} while (s != " ");
}
}
 
怎么没动静了?
 
>>这个论坛上的人怎么这样?既然你们认为很简单,那帮助刚学的人写一下,就几分钟的时间
>>难道不好吗?偏写点不痛不痒的话,莫非自己也不会吧!这样也想拿分?做梦!
如果你对学习是抱着这样的态度的话,我会鄙视你!!!
一个过客 他不是不想帮你,而是你的问题在任何一本有关编程入门的书上都能找到,
你要你稍微用心去看一下,就能很容易的解决你所谓的问题。所以,请改正你的态度。
 
确实,老弟,这和java是没有关系的/
 
后退
顶部