Java面向对象编程 练习题
专题1 初识Java 一、填空题
1.自从Sun推出Java以来,按应用范围可分为三个版本,分别是(SE)、( EE )、( ME )。 2.环境变量的设置,若JDK安装在“D:\\JDK”,则应设置Path为( )、classpath为( )。 3.Java源文件的扩展名为(),用Javac编译Java源文件,得到的字节码文件的扩展名为()。
4.如果Java源文件中有多个类,那么只能有一个类是()类。 5.Java程序可以分成两类,即()和()。
二、选择题
1.作为Java应用程序入口的main方法,其声明格式是(B )
A.public static int main(String args[]) B.public static void main(String args[]) C.public void main(String args[]) D.public int main(String args[]) 2.下面命令正确的是(B)
A.java AppFirst.java B.java AppFirst C.java appfirst.class D.javac AppFirst
3.设有一个Java小程序,源程序名为FirstApplet.java,其class文件为FirstApplet.calss,则运行该小程序的命令为(B)
A.java FirstApplet B.javac FirstApplet.java C.appletviewer FirstApplet.java D.appletviewer FirstApplet.html 4.JDK安装完成后,主要的命令如javac、java等,都存放在根目录的(A)文件夹下。 A.bin B.jre C.include D.doc 5.Java语言是一种 D 语言。 A.机器
B.汇编
C.面向过程的
D.面向对象的
6、Java程序的最基本组成单位是 D 。 A.函数
B.过程
C.变量
D.类
三、简答题(十分重要)
1.Java语言有哪些特点?
跨平台、一种简单、面向对象、分布式、半编译半解释、健壮、安全、多线程 2.JDK安装完成后,如何设置环境变量? Path 配置:
1)我的电脑—属性—高级—环境变量—系统变量
2)新建 变量名:path 变量值: jdk中bin的路径 配置 Class Path :
1)我的电脑—属性—高级—环境变量—系统变量
2)新建 变量名:classpath 变量值: .;jdk中lib的路径; 3.简述Java应用程序和小应用程序的区别。 4.简述Java应用程序的开发过程
专题2 标识符、表达式、数据类型 一、填空题
1.Java逻辑常量有两个:(true )和( false )。 2.写出下列表达式的运算结果,设a=2,b=-4,c=true。 (1)-a%b++ -2 (2)a>=1 && a <= 10 ? a : b true (3)c^(a>b) (4)(-a)< false -8 (5)(double)(a+b)/5+a/b -0.4 3、比较两个数相等的运算符是: == 。 4、Java中的八种基本数据类型分别是:char、 int 、 long 、 short 、 boolean 、 float 、 double 和 byte 。 二、选择题 1.下面这些标识符哪个是错误的(C ) A.Javaworld B._sum C.2Java Program D.$abc 2.下列哪一组运算符的优先级顺序是从高到低排列的(B ) A.|、&、! B.&、^、|| C.!、%、++ D.<、<<、++ 3、下面哪个赋值语句不会产生编译错误(D ) A.char a=’abc’; B.byte b=152; C.float c=2.0; D.double d=2.0; 4.下面哪个单词是Java语言的关键字(D ) A.False B.FOR C.For D.for 5.执行下面程序后,哪个结论是正确的(A ) int a, b, c; a=1; b=3; c=(a+b>3 ? ++a : b++); A.a的值为2,b的值为3,c的值为1 B.a的值为2,b的值为4,c的值为2 C.a的值为2,b的值为4,c的值为1 D.a的值为2,b的值为3,c的值为2 6.设各个变量的定义如下,哪些选项的值为true ( C) int a=3, b=3; boolean flag=true; A.++a = = b B.++a= = b++ C.(++a = = b) || flag D.(++a= =b) & flag 7.表达式(int)6.5/7.5*3的值的类型为(B )? A.short B.int C.double D.float 8.设a, b, x, y, z均为int型变量,并已赋值,下列表达式的结果属于非逻辑值的是(D ) A.x>y && bx-y C.y = = ++x D.y+x*x++ 9.下面语句输出的结果为(B ) 2); //二进制比较 0101^0010=0111 A.6 B.7 C.10 D.25 10.对下面的语句执行完后正确是:(D ) int c=’c’/3; A.输出结果为21 B.输出结果为22 C.输出结果为32 D.输出结果为33 11.以下选项中变量a已定义类型,合法的赋值语句为(A ) A.a = int(y); B.a= =1; C.a = a+1=3; D.++a; 12.执行下列程序段后,ch,x,y的值正确的是:(D ) int x=3, y=4; boolean ch; ch=x A.true,3,4 B.true,4,3 C.false,3,4 D.false,4,3 13.下列标识符中,正确的是 B 。 A、1_Back B、$_Money C、$-money D、2-Forward 14.现有一个int类型的整数和一个double类型的浮点数,当它们之间做了加法运算之后,得到的结果类型应该是 B 。 A、int类型 B、double类型 C、float类型 D、long类型 15、以下程序的运行结果为 A 。 public class A { public static void main(String a[]) { int x = 2, y = 5; String z = \ } } A.7 B.7 C.25 D.7 25x+z 7x+z 25x+z 25x+z x+y=25 x+y=25 x+y=7 x+y=25 x+z=25 x+z=7 x+z=25 x+z=7 16、设有定义int a=12;则执行a*=12;语句后,a的值为: A 。 A.144 B.12 C.24 D.0 17、下列标识符中,合法的一个是C。 A.$#@!$ int x=6,y=8; B.$我们$ C.$22$ D.2$$2 18、执行下列程序段后,b, x, y的值分别是 D 。 boolean b; b=x>y&&++x==--y; A.true , 6, 8 B.false , 6, 8 C.e, 7, 7 D.false, 7, 7 19、下列程序运行的结果是d 。 public class A { public static void main(String args[]) { int x = 7%3; while(x){ x--; } } } A.0 B.1 C.true D.编译错误 三、编程题 1.使用Math.pow()方法,求出2的32次方的值。 public class Tip { public static void main(String[] args){ double i=2; double t=0; t=Math.pow(2, 32); System.out.print(t); } } 专题3 流程控制语句 一、填空题 1.在switch语句中的表达式的类型必须是( int )或者( char )。 2.break在循环语句中的作用是(跳出循环 )。 3.分支语句包括(if )和(switch )。 4.while循环语句的循环次数( n ),do-while语句的循环次数(n+1 ),for语句的循环次数(n )。 二、选择题 1.下面程序片段输出的是什么( C) int a=3, b=1; A.a=1 B.a=3 C.编译错误,没有输出 D.正常运行,但没有输出 2.下面语句执行后,x的值为(C ) int a=4, b=5, x=3; if(++a==b) x=x*a; A.3 B.12 C.15 D.20 3.请看下面的程序代码: 当程序输出“second”时,x的范围是( ) A.x<=0 B.x<20 && x>=0 C.x>0 D.x>=20 4.请看下面的程序代码: switch(n){ case 0: case 1: } 当n为何值时,程序段将输出字符串”second”( ) A. 0 B.1 C.2 D.以上都可以 5.下列语句执行后,j的值是( ) int j=3, i=3; while(--i!=i/j) j=j+2; A. 4 B.5 C.6 D.7 6.下列语句执行后,x的值是(D) int x=2 ; do{x+=x ; }while(x<17); A. 4 B.16 C.32 D.256 7.执行下列语句后,i、j的值是( ) int i=1, j=8; do{ if(i++>--j) continue; }while(i<4); A. i=4, j=5 B.i=5,j=4 C.i=5,j=5 D.i=5,j=6 8.下列语句执行后,k的值是( ) int j=4, i, k=10; for(i=2; i!=j; i++) k=k-i; A. 4 B.5 C.6 D.7 9.下列语句执行后,c的值是( ) char c=’\\0’; for(c=’a’; c<’z’; c+=3){ if(c>=’e’) break; } A. ‘e’ B.’f’ C.’g’ D.’h’ 10.若变量都已经正确说明,则以下程序段输出为( ) a=10; b=50; c=30; if(a>b) a=b;b=c;