




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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;答案: !old_tag & tag注意: tag & (!old_tag) 也对, 类似:tag=true & old_tag = false 这样的描述也对。2. 代码填空如果int x = 已经指向一个整型数组,我们想把数组中的元素翻转(比如:1,2,3,4,5 变成:5,4,3,2,1),写了如下代码,请完善之:for(int i=0; ix.length/2; i+)int t = xi;xi = _;_ = t;答案:两个空都是:xx.length-1-i注意:xx.length-i-1 也是对的。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 = targetArrj; targetArrj = targetArrj+1; targetArrj+1 = tmp; 参考答案:targetArr.length-1-i注意:如果填写targetArr.length-1 在逻辑上也正确,但不符合题目要求,因为这样多了一些没有必要的冗余比较。4. 代码填空一百个铜钱买了一百只鸡,其中公鸡一只5钱、母鸡一只3钱,小鸡一钱3只问一百只鸡中公鸡、母鸡、小鸡各多少?请补充缺少的代码。for(int cock=0; cock=100; cock+)for(int hen=0; hen0)m = _;n = n / 10;System.out.println(m);参考答案: m * 10 + n%10注意: 加法、乘法的交换律6. 代码填空下列代码取出一个整数的千位数字。请完善以下代码:int n = 9175023;int m = _;System.out.println(m);参考答案:n / 1000 % 10注意: 也可以 n % 10000 / 1000, 总之以程序运行结果为度量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);elseSystem.out.println(t);_;System.out.println(t);参考答案: t = + s.charAt(i)8. 代码填空为了保证网络信息的健康,下列filter方法为聊天室实现了所谓“脏话过滤”功能。其中x存储原文,v中装入了若干禁止使用的词汇。比如“猪头”、“牛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 InputStreamReader(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.out.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!);/参考答案:第一个空: throw new StringTooShortException(s)第二个空: throw new StringTooLongException(s)11. 代码填空以下程序运行的结果如下,请根据程序的运行结果在下划线处填写相应代码。程序的运行结果:(2.5, 3.5, 4.5)(2.5, 3.5, 4.5)给出的程序代码:class Pointprivate 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 class 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);参考答案: 第一空: new Point(x,y,z) 第二空: (+x+, +y+, +z+) 12. 代码填空以下程序的运行结果始终如下,请在下划线处添加相应代码。运行结果:DDDDDDDDCCCCCCCCBBBBBBBBAAAAAAAA程序代码:import java.util.*;class AString sa ;A(String str)sa = str;public 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();参考答案:Iterator it = set.iterator()13. 代码填空编写程序将2行3列的数组行列置换复制给3行2列的数组(即数组的转置)。已经写了如下代码,请完善之:class ypublic 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+)_;答案:bji=aij14. 代码填空显示“DaSai”目录下以”Ex”开头的文件和目录,写了如下代码,请完善之:import java.io.*;class JavaFilter implements FilenameFilterString jf;JavaFilter(String s)jf=s;/实现FilenameFilter接口的accept()方法public boolean accept(File dir,String name)return name.startsWith(jf);/name的前缀是否是参数jfpublic class Expublic static void main(String args) throws Exception File f=new File(/DaSai);/过滤以“Ex”开头的文件和目录,存放到字符串数组s中。String s=_;for(int i=0;iend) return注意: 类似:end begin 当然也对16. 代码填空在A B C D E F 六人中随机抽取3人中奖,要求中奖人不能重复。请完善以下代码:public class MyTestpublic 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);参考答案:(int)(Math.random() * a.size()注意: new Random().nextInt(a.size() 也是正确答案17. 代码填空不同进制的数值间的转换是软件开发中很可能会遇到的常规问题。下面的代码演示了如何把键盘输入的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);参考答案:n * 3 + (c-0)注意: 3 * n + c 48 当然也是对的。18. 代码填空许多人都曾经玩过“拍七”游戏。规则是:大家依次从1开始顺序数数,数到含有7或7的倍数的要拍手或其它规定的方式表示越过(比如:7,14,17等都不能数出),下一人继续数下面的数字。违反规则者受罚。下面的程序模拟这个过程,拍7的情况输出“*”,请完善之。for(int i=1; i100; i+)if(i % 7 = 0)printf(*n);else if(_)printf(*n);elseprintf(%dn, i);参考答案: i/10 = 7 | i%10 = 719. 代码填空java中,所有的字符都用unicode编码格式表示,占用2个字节。但当需要把一个字符流化到外设(比如写出到磁盘,通过网络传输等)时,就会涉及到编码方式。如果流化与反流化的编码方式不同,就会产生俗称的“乱码”现象。下列代码从磁盘读入一个用GBK编码的文本文件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();参考答案:new BufferedWriter(new OutputStreamWriter(new FileOutputStream(b.txt), utf-8); 主要注意考生编码方式串写的位置。20. 代码填空不同进制的数值间的转换是软件开发中很可能会遇到的常规问题。下面的代码演示了如何把键盘输入的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);参考答案:n * 3 + (c-0)注意: 3 * n + c 48 当然也是对的。21. 代码填空有n个孩子站成一圈,从第一个孩子开始顺时针方向报数,报到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);参考答案:a.add(a.remove(0)注意:a.add(a.get(0); a.remove(0) 也可适当给分22. 代码填空(a+b)的n次幂的展开式中各项的系数很有规律,对于n=2,3,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 _; 答案: f(m-1,n-1) + f(m-1,n)当然,加法交换是可以的。23. 代码填空以下程序打印出09的数字,请补充缺少的代码。public class MyTestpublic static void f(int begin, 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 = _;答案:a ba b25. 代码填空下面的静态方法的目的是求出某个日期是该年度的第几天。试完善之。如果传入: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 25 36 49 64 81public static void showSqure(int n)for(int i=0; in; i+)for(int j=1; j=i; j+)if(i=_) System.out.print(i + );System.out.println();27. 代码填空下面的代码将数组中的元素的位置颠倒过来:比如:原来的元素是 1,2,3则颠倒后变为:3,2,1public static void reverse(int arrs) for (int i = 0, j = arrs.length - 1; i _ ; i+, j-) int temp = arrsi;arrsi = arrsj;arrsj = temp;28. 代码填空在A B C D E F 六人中随机抽取3人中奖,要求中奖人不能重复。请完善以下代码:public class MyTestpublic 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);29. 代码填空不同进制的数值间的转换是软件开发中很可能会遇到的常规问题。下面的代码演示了如何把键盘输入的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);30. 代码填空有如下程序,完成的功能为:找出数组中的最大元素。请填写程序的中空白,使程序运行正确。public class test public static void main(String args) int array=0,34,67,90,21,-9,98,1000,-78;System.out.println(new test().findMax (array, 0);public int findMax(int array,int index)if(array=null | array.length=0)return 0;int max=array0;if(indexarray.length-1) max=_if(maxarrayindex) max= arrayindex;return max;31. 代码填空电视台开宝箱节目:打进电话的人可以开启一个宝箱。箱子中有一件礼品。礼品是iphone的机率为1/12;是mp3 的机率为1/5;是洗衣粉的机率为1/2;剩余是KFC优惠券。每次打进电话,宝箱会重置。以下程序模拟
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023年江苏省句容市北师大版7年级数学上册期中试题预测试卷附参考答案详解(达标题)
- 水泥礓磋坡道施工方案
- 美术培训总结
- 汽车维修技师培训
- 新员工培训流程
- 入职培训总结报告
- 北京石景山2026届英语九上期末质量检测试题含解析
- 生产设备点检培训
- 装饰报价系统培训
- 2026届江苏省扬州树人学校化学九年级第一学期期中达标检测模拟试题含解析
- 重污染天气应急减排措施“一厂一策”实施方案
- 医古文课件 2华佗传
- 大数据与会计专业人才需求与专业调研报告
- 高中日语宣讲 试听课件
- 小学信息技术新课程标准测试模拟试题及答案
- 质量风险和机会识别、评价及控制措施表
- 幼儿园大班科学教案《神奇的小麦》【幼儿教案】
- 2022年医疗卫生系统事业编制(护理学专业)考试题库及答案
- FZ/T 62033-2016超细纤维毛巾
- 设计思维教案
- 储罐施工方案(电动葫芦)
评论
0/150
提交评论