问答题 “角谷猜想”指出:将一个自然数按以下的一个简单规则进行运算:若数为偶数,则除以2;若为奇数,则乘3加1。将得到的数按该规则重复运算,最终可得1。请在下面程序得每条横线处填写一个语句,使程序的功能完整(如:输入34,则输出结果为34 17 52 26 13 40 20 10 5 16 8 4 2 1)。 注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。 import java.io.*; class JiaoGu{ public static void main(String args[ ]) { System.out.print("/n请输入一个数"); try { BufferedReader br=new BufferedReader (new InputStreamReader(System.in)); Stirng s=br.readLine(); _____________________ while(a!=1) { System.out.print(" " +a); if(a%2==1) _______________________ else a=a/2; } System.out.println(" " +a); } ___________________{} } }
【正确答案】
【答案解析】int a=Integer.parseInt(s); a=a*3+1; catch(Exception e) [解析] 本题主要考查异常的捕获知识、对文件的操作知识。解答本题的关键是熟练掌握异常的捕获知识、对文件的操作知识。在本题中,int a=Integer.parseInt(s);语句的功能是s这个字符型数据转换成整型数据,a%2==1;语句的功能是判断变量a是否为奇数,try-catch()结构的功能是异常的捕获。