用java做ACM的题目常出现Compilation Error,求高手指点。。。。
publicclassHdu1002{publicstaticvoidmain(Stringargs[])throwsException{Scannerin=newSca...
public class Hdu1002 {
public static void main(String args[])throws Exception{
Scanner in = new Scanner(System.in);
String s0 = in.nextLine();
int cas = Integer.parseInt(s0);
for(int i=1;i<=cas;i++){
String s = in.nextLine();
String[] N = s.split(" ");
String str =new BigInteger(N[0]).add(new BigInteger(N[1])).toString() ;
System.out.println("Case "+i+":");
System.out.println(N[0]+" + "+N[1]+" = "+str);
}
}
}
这是杭电的1002题,这么简单的题都有问题,其他的更让人蛋疼,求高手说说为什么经常出现这种情况,解释清楚的一定追加多点分。谢了。 展开
public static void main(String args[])throws Exception{
Scanner in = new Scanner(System.in);
String s0 = in.nextLine();
int cas = Integer.parseInt(s0);
for(int i=1;i<=cas;i++){
String s = in.nextLine();
String[] N = s.split(" ");
String str =new BigInteger(N[0]).add(new BigInteger(N[1])).toString() ;
System.out.println("Case "+i+":");
System.out.println(N[0]+" + "+N[1]+" = "+str);
}
}
}
这是杭电的1002题,这么简单的题都有问题,其他的更让人蛋疼,求高手说说为什么经常出现这种情况,解释清楚的一定追加多点分。谢了。 展开
3个回答
展开全部
你是要程序不是制造一个易碎的玩具,有用户输入的时候尤其是控制台的输入,一定要有足够的输入合法性检查。数组也不检查一下就敢直接用下表访问的。。。
既然用java就要有面向对象的思想,这个问题虽然很小但是如果想处理到所有可能的异常和问题就需要划分对象和职责,这个问题比较小可以不划分到多个对象职责,但至少这个问题应该有独立的方法进行输入的检验、计算和显示。
还有,有用户交互的程序一定要告诉用户改输入什么。告诉用户应该以什么格式输入什么内容,这样用户用错的概率小一点;并且要及时反馈,你的for循环每个循环开始应该告诉用户继续输入,否则用户都不知道程序运行的怎么样了
既然用java就要有面向对象的思想,这个问题虽然很小但是如果想处理到所有可能的异常和问题就需要划分对象和职责,这个问题比较小可以不划分到多个对象职责,但至少这个问题应该有独立的方法进行输入的检验、计算和显示。
还有,有用户交互的程序一定要告诉用户改输入什么。告诉用户应该以什么格式输入什么内容,这样用户用错的概率小一点;并且要及时反馈,你的for循环每个循环开始应该告诉用户继续输入,否则用户都不知道程序运行的怎么样了
更多追问追答
追问
呵呵,虽然你骂的有道理,但请你先了解一下ACM的规则吧,还有就是以后回答问题的时候可以语气好点的。。。
追答
(⊙o⊙)…不好意思,您竟然真的是指编译问题,多年来。。这个。。。
语气的问题我会注意,多谢提醒
ACM比赛如何评价程序我不熟悉,但是能注意封装和健壮性总是好的
后面加System.out.println();不会出问题啊,您不是加的全角字符吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import java.math.BigInteger;
import java.util.Scanner;
没引入这2个包?
import java.util.Scanner;
没引入这2个包?
更多追问追答
追问
却是是这个问题,原来多年来我因为复制粘贴不注意被这么个2B问题困扰。太感谢了。。
不过现在又出现格式错误问题,您也给我解决了吧(即使我在System.out.println(N[0]+" + "+N[1]+" = "+str);后面再加一行System。out。ptintln();还是有问题)。
追答
什么叫格式错误问题
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
编译错误
你的格式错了。 Hdu1002应该写Main
还要写几个包木有
你的格式错了。 Hdu1002应该写Main
还要写几个包木有
追问
呵呵,您所提到的问题我都试了,不行啊。不过还是很感谢您的热心
追答
=。=不可能。我都是那么刷题的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询