被测试点3折磨半天后,通过与别人的满分代码不断比对,终于知道陈姥姥想要的效果是如何。不过真的,她真的题目中就该说清楚,这样搞人心态很没意思。下面我就把几个关键测试用例分享一下,大家能照样输出肯定就能全过了。
前面一个空格,后面一个正确的数字,应输出这种效果:
前面多个空格,后面一个正确的数字,应输出这种效果:
前后都有空格,中间一个正确的数字,应输出这种效果:
接下来的用例我就不一个一个说了,大家自己看:
下面附上我的java代码,其实只要彻底清楚题目要求,真的不难
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String string = in.nextLine();
in.close();
int i = string.indexOf(" ");
int flag = 0, a = 0, b = 0;
try {
a = Integer.parseInt(string.substring(0, i));
if (a <= 0 || a > 1000)
flag = 1;
} catch (NumberFormatException e) {
flag = 1;
}
try {
b = Integer.parseInt(string.substring(i + 1, string.length()));
if (b <= 0 || b > 1000)
flag = flag == 1 ? 3 : 2;
} catch (NumberFormatException e) {
flag = flag == 1 ? 3 : 2;
}
switch (flag) {
case 0:
System.out.printf("%d + %d = %d",a,b,a+b);
break;
case 1:
System.out.printf("? + %d = ?",b);
break;
case 3:
System.out.print("? + ? = ?");
break;
case 2:
System.out.printf("%d + ? = ?",a);
break;
}
}
}