1、Java语言参考题目填空题Java语言参考题目填空题1. 代码填空假设s是一个型如:cat223dog456nice25ttt98的串,其特征是数字与字符交错。我们希望知道这个串中有多少个数字段。假设该串必以字符开始。我们给出了如下代码,请完善之: boolean old_tag = false; / 表示开始不是数字 boolean tag = false; int n = 0; / 数字组计数 for(int i=0; i=0 & c=9; / 是否为数字 if(_) n+; old_tag = tag; 2. 代码填空如果int x = 已经指向一个整型数组,我们想把数组中的元素翻转(比
2、如:1,2,3,4,5 变成:5,4,3,2,1),写了如下代码,请完善之: for(int i=0; ix.length/2; i+) int t = xi; xi = _; _ = t; 3. 代码填空冒泡排序仅仅在相邻两个元素间进行比较和交换。下面的程序实现了对某个整型数组中的元素进行冒泡排序,它在保证逻辑正确的前提下,避免了冗余的比较。请填写缺少的代码。int targetArr = 3,22,11,5,400,99,20,22,5;for(int i=0; itargetArr.length-1; i+) for(int j=0; jtargetArrj+1) int tmp = t
3、argetArrj; targetArrj = targetArrj+1; targetArrj+1 = tmp; 4. 代码填空一百个铜钱买了一百只鸡,其中公鸡一只5钱、母鸡一只3钱,小鸡一钱3只问一百只鸡中公鸡、母鸡、小鸡各多少?请补充缺少的代码。for(int cock=0; cock=100; cock+) for(int hen=0; hen0) m = _; n = n / 10; System.out.println(m);6. 代码填空下列代码取出一个整数的千位数字。请完善以下代码: int n = 9175023; int m = _; System.out.println(
4、m);7. 代码填空下列代码运行结果为:12345234568923456789即把一个串从数字不连续的位置断开。试完善之。 String s = 12345234568923456789; String t = 1; for(int i=1; is.length(); i+) if(s.charAt(i)=s.charAt(i-1)+1) t += s.charAt(i); else System.out.println(t); _; System.out.println(t);8. 代码填空为了保证网络信息的健康,下列filter方法为聊天室实现了所谓“脏话过滤”功能。其中x存储原文,v中
5、装入了若干禁止使用的词汇。比如“猪头”、“牛X”什么的。Filter方法把脏话替换为“*”,并返回过滤后的串。请完善之。 public static String filter(String x, Vector v) for(int i=0; i=5 & s.length()=10) System.out.println(s); / 没有异常发生,正常显示字符串信息 else if(s.length()5) _; else _; public static void main(String args)throws IOException InputStreamReader in = new I
6、nputStreamReader(System.in); BufferedReader br = new BufferedReader(in); String str=br.readLine(); try myFunc(str); catch(StringTooShortException e) / 捕捉字符串太短异常 System.out.println(发生字符串太短异常:+e); catch(StringTooLongException e) / 捕捉字符串太长异常 System.out.println(发生字符串太长异常:+e); finally / 程序最后执行位置 System.o
7、ut.println(程序执行结束); /class StringTooShortException extends Exception / 自定义字符串太短异常类 public StringTooShortException(String s) System.out.println(s+ is too short!); class StringTooLongException extends Exception / 自定义字符串太短异常类 public StringTooLongException(String s) System.out.println(s+ is too long!);
8、/11. 代码填空以下程序运行的结果如下,请根据程序的运行结果在下划线处填写相应代码。程序的运行结果:(2.5, 3.5, 4.5)(2.5, 3.5, 4.5)给出的程序代码:class Point private double x,y,z; public Point(double a, double b, double c) x = a; y = b; z = c; public Object clone() Object obj = _; return obj; public String toString() String str = _; return obj; public cla
9、ss Test public static void main(String arg) Point p = new Point(2.5, 3.5, 4.5); Point q = (Point)p.clone(); System.out.println(p); System.out.println(q); 12. 代码填空以下程序的运行结果始终如下,请在下划线处添加相应代码。运行结果:DDDDDDDDCCCCCCCCBBBBBBBBAAAAAAAA程序代码:import java.util.*;class A String sa ; A(String str) sa = str; public
10、 String toString() return sa; public class B public static void main(String args) Set set = new HashSet(); set.add(new A(AAAAAAAA); set.add(new A(BBBBBBBB); set.add(new A(CCCCCCCC); set.add(new A(DDDDDDDD); _; while(it.hasNext() System.out.println(it.next(); 13. 代码填空编写程序将2行3列的数组行列置换复制给3行2列的数组(即数组的转置
11、)。已经写了如下代码,请完善之:class y public static void main(String args) throws Exception int a=1,2,3,4,5,6; int b=new int32; for(int i=0;i2;i+) for(int j=0;j3;j+) _; 14. 代码填空显示“DaSai”目录下以”Ex”开头的文件和目录,写了如下代码,请完善之:import java.io.*;class JavaFilter implements FilenameFilter String jf; JavaFilter(String s) jf=s; /
12、实现FilenameFilter接口的accept()方法 public boolean accept(File dir,String name) return name.startsWith(jf);/name的前缀是否是参数jf public class Ex public static void main(String args) throws Exception File f=new File(/DaSai); /过滤以“Ex”开头的文件和目录,存放到字符串数组s中。 String s=_; for(int i=0;is.length;i+) File ff=new File(si);
13、/ 根据si创建File类对象 if(ff.isDirectory() System.out.println(si+ is a directory); else System.out.println(si+ is a file); 15. 代码填空以下程序打印出09的数字,请补充缺少的代码。public class MyTest public static void f(int begin, int end) _; System.out.println(begin); f(begin+1, end); public static void main(String args) f(0,9); 1
14、6. 代码填空在A B C D E F 六人中随机抽取3人中奖,要求中奖人不能重复。请完善以下代码:public class MyTest public static void main(String args) Vector a = new Vector(); for(char i=A; i=F; i+) a.add( + i); for(int k=0; k3; k+) int d = _; System.out.println(a.remove(d); 17. 代码填空不同进制的数值间的转换是软件开发中很可能会遇到的常规问题。下面的代码演示了如何把键盘输入的3进制数字转换为十进制。试完善
15、之。 BufferedReader br = new BufferedReader(new InputStreamReader(System.in); String s = br.readLine(); int n = 0; for(int i=0; is.length(); i+) char c = s.charAt(i); if(c 2) throw new RuntimeException(Format error); n = _; System.out.println(n);18. 代码填空许多人都曾经玩过“拍七”游戏。规则是:大家依次从1开始顺序数数,数到含有7或7的倍数的要拍手或其
16、它规定的方式表示越过(比如:7,14,17等都不能数出),下一人继续数下面的数字。违反规则者受罚。下面的程序模拟这个过程,拍7的情况输出“*”,请完善之。 for(int i=1; i100; i+) if(i % 7 = 0) printf(*n); else if(_) printf(*n); else printf(%dn, i); 19. 代码填空java中,所有的字符都用unicode编码格式表示,占用2个字节。但当需要把一个字符流化到外设(比如写出到磁盘,通过网络传输等)时,就会涉及到编码方式。如果流化与反流化的编码方式不同,就会产生俗称的“乱码”现象。下列代码从磁盘读入一个用GB
17、K编码的文本文件a.txt,写出为一个用utf-8编码的文件:b.txt,即实现了编码方式转换。请补充缺失的代码。BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(a.txt),GBK);BufferedWriter bw = _;for(;) String s = br.readLine(); if(s=null) break; bw.write(s); bw.newLine(); bw.flush();20. 代码填空不同进制的数值间的转换是软件开发中很可能会遇到的常规问题。下面
18、的代码演示了如何把键盘输入的3进制数字转换为十进制。试完善之。 BufferedReader br = new BufferedReader(new InputStreamReader(System.in); String s = br.readLine(); int n = 0; for(int i=0; is.length(); i+) char c = s.charAt(i); if(c 2) throw new RuntimeException(Format error); n = _; System.out.println(n);21. 代码填空有n个孩子站成一圈,从第一个孩子开始顺
19、时针方向报数,报到3的人出列,下一个人继续从1报数,直到最后剩下一个孩子为止。问剩下第几个孩子。下面的程序以10个孩子为例,模拟了这个过程,请完善之(提示:报数的过程被与之逻辑等价的更容易操作的过程所代替)。 Vector a = new Vector(); for(int i=1; i=10; i+) a.add(第 + i + 个孩子); for(;) if(a.size()=1) break; for(int k=0; k2; k+) _; a.remove(0); System.out.println(a);22. 代码填空(a+b)的n次幂的展开式中各项的系数很有规律,对于n=2,3
20、,4时分别是:1 2 1, 1 3 3 1,1 4 6 4 1。这些系数构成了著名的杨辉三角形: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1下列的程序给出了计算第m层的第n个系数的计算方法,试完善之(m,n都从0算起)。 public static int f(int m, int n) if(m=0) return 1; if(n=0 | n=m) return 1; return _; 23. 代码填空以下程序打印出09的数字,请补充缺少的代码。public class MyTest public static void f(int begin,
21、 int end) _; System.out.println(begin); f(begin+1, end); public static void main(String args) f(0,9); 24. 代码填空如果要把两个整型变量a、b的值交换,一般要采用一个中间变量做过渡,但也可以在不借助任何其它变量的情况下完成。试填写缺失的代码。 a = a b; b = _; a = _;25. 代码填空下面的静态方法的目的是求出某个日期是该年度的第几天。试完善之。如果传入:year=1980,month=1, day=1则返回 1如果传入:year=1980,month=2, day=1则返回 32public static int getDayOfYear(int year, int month, int day) int days=_; int flag =(year%4=0 & year%100!=0) | year%400 = 0 ? 1 : 0; int sum = day ; for(int i=0;imonth;i+) sum += daysflagi; return sum; 26. 代码填空下列方法的目的是,找出1n之间所有的平方数。试补全缺失的代码。当n=10时,输出结果是:1 4 9当n=100时,输出结果是:1 4 9 16 2
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2