欢迎来到天天文库
浏览记录
ID:28677193
大小:169.50 KB
页数:25页
时间:2018-12-12
《算法第四版习地的题目答案详解》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实用标准文档1.1.1给出以下表达式的值:a.(0+15)/2b.2.0e-6*100000000.1c.true&&false
2、
3、true&&true答案:a.7,b.200.0000002c.ture1.1.2给出以下表达式的类型和值:a.(1+2.236)/2b.1+2+3+4.0c.4.1>=4d.1+2+"3"答案:a.1.618b.10.0c.trued.331.1.3 编写一个程序,从命令行得到三个整数参数。如果它们都相等则打印equal,否则打印notequal。publicclassTestUqual{publicstaticvoidmain(
4、String[]args){inta,b,c;a=b=c=0;StdOut.println("Pleaseenterthreenumbers");a=StdIn.readInt();b=StdIn.readInt();c=StdIn.readInt();if(equals(a,b,c)==1){StdOut.print("equal");}else{StdOut.print("notequal");}}publicstaticintequals(inta,intb,intc){if(a==b&&b==c){return1;}else{return0;}}}1.1
5、.4 下列语句各有什么问题(如果有的话)?a.if(a>b)thenc=0;b.ifa>b{c=0;}c.if(a>b)c=0;精彩文案实用标准文档d.if(a>b)c=0elseb=0;答案:a.if(a>b)c=0;b.if(a>b){c=0;}1.1.5 编写一段程序,如果double类型的变量x和y都严格位于0和1之间则打印true,否则打印false。publicclassTestUqual{publicstaticvoidmain(String[]args){doublex;doubley;x=StdIn.readDouble();y=StdIn.r
6、eadDouble();StdOut.print(compare(x)&&compare(y));}publicstaticbooleancompare(doublex){If(x>0&&x<1)returenture;elsereturnfalse;}}1.1.6下面这段程序会打印出什么?intf=0;intg=1;for(inti=0;i<=15;i++){StdOut.println(f);f=f+g;g=f-g;}答案:011235813213455891442333776101.1.7分别给出以下代码段打印出的值:a.doublet=9.0;while
7、(Math.abs(t-9.0/t)>.001)t=(9.0/t+t)/2.0;StdOut.printf("%.5f",t);b.intsum=0;for(inti=1;i<1000;i++)精彩文案实用标准文档for(intj=0;j
8、释。a.System.out.println('b');b.System.out.println('b'+'c');c.System.out.println((char)('a'+4));答案:a.bb.197c.e1.1.9编写一段代码,将一个正整数N用二进制表示并转换为一个String类型的值s。解答:Java有一个内置方法Integer.toBinaryString(N)专门完成这个任务,但该题的目的就是给出这个方法的其他实现方法。下面就是一个特别简洁的答案:Strings="";for(intn=N;n>0;n/=2)s=(n%2)+s;1.1.10下面
9、这段代码有什么问题?int[]a;for(inti=0;i<10;i++)a[i]=i*i;解答:它没有用new为a[]分配内存。这段代码会产生一个variableamightnothavebeeninitialized的编译错误。1.1.11 编写一段代码,打印出一个二维布尔数组的内容。其中,使用*表示真,空格表示假。打印出行号和列号。publicclassTest{publicTest(){//TODOAuto-generatedconstructorstub}publicstaticvoidmain(String[]args){//TODOAuto-gen
10、eratedmethod
此文档下载收益归作者所有