您好,欢迎访问三七文档
Java基础试题一、选择题1.编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。A..javaB..classC..htmlD..exe2、设x=1,y=2,z=3,则表达式y+=z--/++x的值是(A)。A.3B.3.5C.4D.53、main方法是JavaApplication程序执行的入口点,关于main方法的方法头以下哪项是合法的(B)?A、publicstaticvoidmain()B、publicstaticvoidmain(Stringargs[])C、publicstaticintmain(String[]arg)D、publicvoidmain(Stringarg[])44.Whichofthefollowingisnotavalidcomment:Da./**comment*/b./*comment*/c./*commentd.//comment5.Java中char类型的数据长度为:C(A)8位(B)16位(C)32位(D)64位6.下面哪个表达式是错误的:B(A)inti=100;(B)floatf=100.0;(C)Objecto=“Helloworld”;(D)charc=‘\u1234’;7.下面哪个语句是正确的:C(A)bytes=256;(B)Strings=‘Helloworld’;(C)intx=012;(D)charc=“a”;8.下列叙述中,正确的是:AA)声明变量时必须指定一个类型B)Java认为变量number与Number相同C)Java中唯一的注释方式是//D)源文件中public类可以有0或多个9.下列属于合法的Java标识符是:DA)ABCB)&5678C)+rriwoD)saler10.下面哪个标识符是不合法的:D(A)s1(B)$1(C)_1(D)1s11.在switch(expression)语句中,expression的数据类型不能是:AA)doubleB)charC)byteD)short12.已知:int[]a=newint[100];在下列给出的数组元素中,非法的是:DA)a[0]B)a[1]C)a[99]D)a[100]13.下列的哪个赋值语句是不正确的?:AA.floatf=11.1;B.doubled=5.3E12;C.floatd=3.14f;D.doublef=11.1E10f;14.下列的哪个赋值语句是正确的?DA.chara=12;B.inta=12.0;C.inta=12.0f;D.inta=(int)12.0;15.下面关于数组的定义错误的是(B)A)inta[]={1,2,3,4,5,6};B)inta[6]={1,2,3,4,5,6}C)int[][]a;D)int[]a=newint[6];(以下为多项选择)16.下面哪些代码可以正确编译(AC)(A)doubled=1.0;inti=1;if(d==i){System.out.println(“Helloworld”);}(B)inti=1;intj=2;if(i=1&&j=2){System.out.println(“Helloworld”);}(C)booleanb1=true,b2=false;if(b1==b2){System.out.println(“Helloworld”);(D)inti=0;if(i){System.out.println(“Helloworld”);}17.下面的哪些声明是合法的?AC(A)inta[];(B)inta[5];(C)int[]a;(D)inta[]=[5];18.下面哪些类型是Java的基本数据类型ABD(A)int(B)boolean(C)String(D)double二、填空题1..JVM是(Java虚拟机),JDK是(Java开发工具包),appletviewer是(小应用程序阅览器)。2.Java源程序经编译生成的字节码文件的扩展名为(class)3.Java语言的主要贡献者是(JamesGosling(詹姆斯·戈士林))。4.在JDK中,Java语言的编译命令是_____Javac.exe_______,Java语言的执行命令是java.exe_______。5.写出以下表达式的结果:1)5%6/3=(1)2)true&&false=(false)3)53=(0)4)12^-4=(-16)6.设有数组定义:inta[]={11,22,33,44,55,66,77,88,99};则执行下列几个语句后的输出结果是336699。for(inti=0;ia.length;i++)if(a[i]%3==0)System.out.print(a[i]+);三、简答题1.swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?switch(expr1)中,expr1是一个整数表达式。因此传递给switch和case语句的参数应该是int、short、char或者byte。long,String都不能用于swtich中的表达式(JDK7以后可以作用于String)。2.一个.java源文件中是否可以包括多个类?有什么限制?可以。必须只有一个类名与文件名相同3.简述Java语言实现平台无关(跨平台)性的原理。JJava程序经过编译,会生成字节码文件,而字节码可以在任何安装了Java虚拟机的平台上运行,Java虚拟机类似一个模拟执行环境,在不同的操作系统上拥有不同的Java虚拟机实现,但是这些Java虚拟机遵循统一的规范来解释class文件,并将class文件中的指令转换为本地操作系统对应的指令,这样就实现了相同的class文件可以通过Java虚拟机转换为对应操作系统上的对应指令,实现class文件,即Java程序的跨平台性。4.说明Java语言中三种注释的语法格式,以及用途。Java语言中注释的语法有三种:单行注释、多行注释和文档注释。1)单行注释,单行注释指只能书写一行的注释。用于对于代码进行简单的说明,单行注释的语法格式为://注释内容2)多行注释:多行注释指可以书写任意多行的注释。多行注释一般用于说明比较复杂的内容,例如程序逻辑或算法实现原理等。多行注释的语法格式为:/*注释内容*/3)文档注释:文档注释指可以被提取出来形成程序文档的注释格式,这是Java语言有特色的注释格式。一般对于程序程序的结构进行说明,例如类、属性、方法和构造方法进行说明,文档注释的语法格式为:/**注释内容*/5.请把以下英文翻译成中文:WhenyoucompileaprogramwrittenintheJavaprogramminglanguage,thecompilerconvertsthehuman-readablesourcefileintoplatform-independentcodethataJavaVirtualMachinecanunderstand.Thisplatform-independentcodeiscalledBytecode.当你在编译Java编程语言编写的程序,编译器转换成平台无关的代码,Java虚拟机能够理解人类可读的源文件。这个平台无关的代码被称为字节码。}第二章注意问题:main函数是Java应用程序执行的入口。(int)23.7结果为23(int)-45.89f结果为-45+”除字符串相加功能外,还能把非字符串转换成字符串,如:“x”+123;的结果是“x123”。如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。但被模数是负数就另当别论了1,三元运算符classTernaryOp{publicstaticvoidmain(Stringargs[]){intsalary,daysPresent=30;salary=daysPresent==20?2000:3000;System.out.println(您本月薪资为$+salary);}}2,编写一个程序,这个程序从键盘上输入2个数,然后求这2个数的和,程序结束。提示:调用System.in.read();可以读取到一个从键盘上输入字符对应的整数。通过这个程序,你一定能体会到在什么importjava.io.*;publicclassCh1{publicstaticvoidmain(String[]args)throwsIOException{BufferedReaderke=newBufferedReader(newInputStreamReader(System.in));Stringx;intp,q,m;System.out.print(请输入第一个数);x=ke.readLine();p=Integer.parseInt(x);System.out.print(请输入第二个数);x=ke.readLine();q=Integer.parseInt(x);m=p+q;System.out.println(两个数的和为:+m);}}3,数组publicclassLo{publicstaticvoidmain(String[]args){int[]aa={32,55,69};for(inti=0;iaa.length;i++){System.out.print(aa[i]+”“);}System.out.println();}}4,输入一个年份,判断它是不是闰年。闰年:能被4整除但不能被100整除,或者能被400整除。publicclassex3_1{publicstaticvoidmain(String[]args)throwsIOException{intyear;booleanIsLeapYear;System.out.println(Entertheyear:);BufferedReaderin=newBufferedReader(newInputStreamReader(System.in));year=(newInteger(in.readLine())).intValue();IsLeapYear=((year%4==0&&year%100!=0)||(year%400==0));if(IsLeapYear){System.out.print(year);System.out.println(isaleapyear);}else{System.out.print(year);System.out.println(isnotaleapyear);}}}5,输入两个整数比较大小importjava.io.*;publicclassex3_2{publicstaticvoidmain(String[]args)throwsIOException{intx,y;BufferedReaderin=newBufferedReader(newInputStreamReader(System.in));System.out.println(Enterxandy:);x=(newInteger(in.readLine())).intValue();y=(newInteger(in.readLine())).intValue();if(x!=y)if(xy)System.out.println(xy);elseSystem.out.println(xy);elseSystem.out.println(x=y);}}6,已知一个学生的分数,给出其分数等级。90-100分为A级;80-89分为B级;70-79分为C级;60-69分为D级;0-59分为E级publicclassIfElseDemo{publicstaticvoidmain(String[]args){inttestscore=76;chargrade;if(testscore=90){grade='A';}elseif(testscore=80){grade='B';}elseif(test
本文标题:Java经典练习题
链接地址:https://www.777doc.com/doc-2878937 .html