欢迎来到天天文库
浏览记录
ID:51075253
大小:181.50 KB
页数:24页
时间:2020-03-18
《Java程序设计基础习题答案.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Java程序设计基础课后习题参考答案第2章1.关于JavaApplication的入口方法main()的检验:main()方法的参数名是否可以改变?HKlil]()方法的参数个数是否可以改变?该方法名是否可以改变?参考答案:(l)main()方法的参数名可以改变。(2)main()方法的参数个数不可以改变。(3)该方法名不可以改变。2.当一个程序没有mainO方法时,能编译吗?如果能编译,能运行吗?参考答案:半一个程序没有main()方法是,是可以编译通过的,但是不能给运行,因为找不到一个主函数入口。3.下列语句能否编译通过?bytei=127;bytej=128;long11=9
2、99999;long12=9999999999;参考答案:bytei和long11可以编译通过。而bytej和long12超出自身数据类型范围,所以编译失败。4.下列语句能否编译通过?floatfl=3.5;float£2=3.5f;参考答案:java屮浮点型的数据在不声明的情况下都是double型的,如果要表示一个数据是float型的,必须在数据后而加上“产或“化因此,floatfl无法编译通过。5.验证int和char,int和double等类型是否可以相互转换。参考答案:(l)char类型可以转换为int类型的,但是int类型无法转换为chai•类型的;⑵int可以转换为do
3、uble类型的,但是double类型无法转换为int类型的。6.计算下列表达式,注意观察运算符优先级规则。若有表达式是非法表达式,则指出不合法Z处且进行解释。(1)4+5==6*2(3)9%2*7/3>17(5)4+5%3!=7・2⑵(45)/6(4)(4+5)<=6/3(6)4+5/6>=10%2参考答案:表达式(2)为不合法表达式,只能将值赋值给一个变量,因此其屮(4=5)将5赋值给4是不合法的。7.下列()是合法的Java标识符。(1)Counter1(2)$index,(3)name-7(4)byte(5)larray(6)2i(7)try(8)integer参考答案:Ja
4、va标识符由数字,字母和下划线(」,美元符号($)组成。在Java屮是区分大小写的。而且还要求首位不能是数字。最重要的是,Java关键字不能当作Java标识符。因此,(1)、(4)、(5)、(8)是合法标识符。8.下列各项屮定义变量及赋值不正确的是()(1)intT=32;(2)floatf=45.0;(3)doubled=45.0;参考答案:(2)不正确,选项(2)定义float类型时必须在数据后面加上或9.Java语言屮,整型常数123占用的存储字节数是()(1)1(2)2(3)4(4)8参考答案:正确选项是(3),Java语言屮,默认整型数占用4个字节数。10.以下代码的编译
5、运行结果是publicclassTest{publicstaticvoidmain(String[]args){intage;age=age+1;Systcm.out.println(uthcageis“+age);}}(1)编译通过,运行无输出(2)编译通过,运行结果为"theageisV"(3)编译通过但运行时出错(4)不能通过编译参考答案:(4)为正确选项。Java在使用变量前应该先初始化。11.写出下列表达式的运行结果(1)6+3<2+7(2)4%2+4*3/2(3)(1+3)*2+12/3(4)8>3&&6=6&&12<4(5)7+12<4&&12-4<8(6)23»2参
6、考答案:(1)false;(2)6;(3)12;(4)foie;(5)false;(6)5;1.编码验证i++和++i的区别。参考答案:++i和i++在单独使用时,就是i=i+l。而a=++i,相当于i=i+l;a=i;(先i=i+l,再使用i的值),而a=i++,相当于a=i;i=i+l;(先使用i的值,再i=i+1)。1.写出下面表达式的结果(1)5/3(2)5/3.0(3)5%3(4)5%-3参考答案:(1)1(2)1.6666666666666667(3)2(4)22.考虑如下的Test.java,并指出错误原因。程序清单:Test.javaclassTest{public
7、staticvoidmain(String[]args){byteb=5;b=(b-2);System.out.println(b);}参考碁案:b=(b・2);错误,在进行b-2吋,运算结果类自动提升为int,jfub是byte类型,编译的吋候会报错,因为存在高类型数据向低类型数据转化的风险。而byteb=5;是正确的,因为在编译的时候就能够确定5在byte允许的范围内,虚拟机在编译时做了一定的优化处理。3.考虑—•下对于if......else……语句,还有没有更
此文档下载收益归作者所有