新人,求助个简单的问题
import java.io.*;
public class T1
{
public static void main(String[] args) throws IOException
{
short num;
InputStreamReader a=new InputStreamReader (System.in);
BufferedReader b=new BufferedReader (a);
System.out.pritln("请输入成绩: "+"分");
String c=b.readLine();
num=Float.parseFloat(c);
if (num>=90)
System.out.println("优秀");
if (num>=80)
System.out.println("一般");
if (num>=70)
System.out.println("良好");
if (num>=60)
System.out.println("合格");
else System.out.println("不合格");
}
}
上面一个小程序里,在CMD上运行后输入一个数据后判断成绩了,怎么样弄可以在输入第二个数据的时候不用再运行一次java t1来进行判断成绩?
做个网页版的,不行吗?
[解决办法]
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class A {
private static void inner() throws Exception {
short num;
InputStreamReader a = new InputStreamReader(System.in);
BufferedReader b = new BufferedReader(a);
System.out.println("请输入成绩: " + "分");
String c = b.readLine();
// exit 跳出循环否则,不断读取输入;跳出执行system.exit(0),结束。
while(!c.equals("exit")) {
num = Short.parseShort(c);
if (num >= 90)
System.out.println("优秀");
else if (num >= 80)
System.out.println("一般");
else if (num >= 70)
System.out.println("良好");
else if (num >= 60)
System.out.println("合格");
else
System.out.println("不合格");
c = b.readLine();
}
System.exit(0);
}
public static void main(String[] args) throws Exception {
inner();
}
}
这个程序没有很强的容错性,输入长int或者其他字母无法处理
[解决办法]
请笑纳~~~
/**
*
* @param input
* 输入的成绩
*/
private static void showResult(String input) {
Float num;
num = Float.parseFloat(input);
if (num >= 90)
System.out.println("优秀");
else if (num >= 80)
System.out.println("一般");
else if (num >= 70)
System.out.println("良好");
else if (num >= 60)
System.out.println("合格");
else
System.out.println("不合格");
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("请输入成绩: 分. [ Q = 退出 ]");
try {
String input = scanner.nextLine();
if (input.trim().length() > 0) {
if ("Q".equalsIgnoreCase(input)) {
break;
}
// 打印结果
showResult(input);
}
} catch (Exception e) {
System.out.println("输入不正确 " + e.toString());
}
}
scanner.close();
}