Java程序设计填空和改错题(参考答案解析)
- 格式:doc
- 大小:34.50 KB
- 文档页数:9
java程序设计第1-4章练习题参考答案(1)一、选择题1.下面供选字符序列中,不属于...Java语言关键字的是( A ) A.goto B.null C.false D.native2.以下是关于Java语言关键字的叙述,其中正确的是( C )A.关键字可以用来描述类的成员类型,但是不能描述普通变量B.关键字由字母(包括英文字母、下划线字符、美元字符、文字字符)和数字组成C.关键字不可以用作变量、方法、类或标号的标识符D.break和main都是Java语言的关键字3.下述字符组合不能作为Java程序标识符的是(D)A.Aa12 B.XC.y D.5x4.在下述字符串中,不属于...Java语言关键字的是( C )A.float B.newC.java D.return5.下列字符组合不能作为Java整型常量的是( A )A.078B.0x3ACBC.5000D.0x3ABC6.设有如下程序:public class Test {public static void main(String[] args) {String foo=args[1];String bar=args[2];String baz=args[3];System.out.println("baz= "+baz);}}下述哪一行命令可以使得执行该程序的输出为baz= 2 ( C )A) java Test 2222 B) java Test 1 2 3 4C) java Test 4 2 4 2 D) java Test 4 3 2 17.在Java语言中,int类型数据的长度是( C )A.1个字节B.2个字节C.4个字节D.8个字节8. 用Java虚拟机执行类名为Hello的应用程序的正确命令是( D )。
A) java Hello.class B) Hello.class C) java Hello.java D) java Hello9.执行以下代码,输出结果是( B )int x=5,y=7,u=9,v=6;System.out.println(x>y ? x+2:u>v ? u-3:v+2);A.8B.6C.7D.true10.下列修饰符中与访问控制无关的是(C)。
(完整版)java程序填空题一、程序填空题(每空3分,共30分)1.以下程序要求从键盘输入一个整数,判别该整数为几位数,并输出结果,请将下面的程序填写完整。
public class Blank1 {public static void main(String[] args) throws IOException { Scanner sc=new Scanner( (1) );int count=0,t;int x=sc.nextInt();sc.close();t=x;while(t!=0){count++;(2) ;}System.out.println(x+"是"+count+"位数。
");}}答案:(1)System.in(2)t=t/102.在下面的程序中使用方法重载分别实现了两个和三个整数的相加,请将下面的程序填写完整。
class AddOver{public (3){return a+b;}public int add( int a, int b, int c ){return a+b+c ;}}public class Blank2{public static void main(String[] args){AddOver a= (4) ;System.out.println(a.add(1,2));System.out.println(a.add(1,2,3));}}答案:(3)int add(int a,int b)(4)new AddOver()3. 构造一个类来描述一个点,该类的构成包括点的x和y两个坐标,以及一些对点进行的操作,包括:取得点的坐标值,利用另一个点对当前点的坐标进行赋值,请将下面的程序填写完整。
class Point{int x,y;public(5) (int x, int y){this.x=x; this.y=y;}public Point getPoint(){Point temp = new Point(0,0);temp.x=x; temp.y=y;return (6);}public void setPoint( (7) ){this.x=s.x; this.y=s.y;}}public class Blank3 {public static void main(String[] args){Point a = new Point(3,4);Point b = new Point(0,0);b=a.getPoint();Point c = new Point(0,0);c.setPoint(b);}}答案:(5)Point(6)temp(7)Point s4. 下面的程序完成从D:\Hello.txt中读取文本并显示在屏幕上,请将下面的程序填写完整。
“Java程序设计基础”课程习题一、填空1.Java程序分两类___Applet___和application,Java Application 类型的程序,程序从___main方法___开始执行。
2.定义一个Java类时,通过关键字__extends____指明该类的父类。
一个类可以有___1___个父类。
3.用public修饰的类称为_公有类或公用类__。
用public修饰的类成员称为公有成员。
被说明为public的内容可以被__所有其他类___ 使用。
如果public类文件与使用它的类文件不在同一目录中,需要通过__import____语句引入。
4.用___private___ 修饰的类成员称为私有成员。
私有成员只能在__本类__ 中使用。
5.如果子类定义的成员变量与父类的成员变量同名,称为___方法覆盖___ ,要表明使用子类的成员变量,可以在成员变量前加上关键字__super___ 。
6.____Object__ 类是Java类库中所有类的父类。
7.Java字符使用__16位的字符集,该字符集成为__Unicode____ 。
8.当子类中定义的方法与父类方法同名时,称子类方法___覆盖___ 父类方法,子类默认使用自己的方法。
使用父类的同名方法,必须用关键字__super__ 说明。
9.Java源程序文件名的后缀是___.java___,Java字节码文件名的后缀是_.class_____。
10.Java类名的第一个字母通常要求___大写___。
11.Java程序由____类__组成,每个程序有一个主类,Java程序文件名应与____主__类的名称相同。
12.Java__Application_类型的程序需要main()方法,程序从__main____开始执行。
13.布尔型数据类型的关键字是_boolean__ ,占用位数是___1位___ ,有__true__ 和_false_两种值。
1. ( 1.0分)Java中预定义的数据类型中都有对应的常量,对于整型直接数,他的形式又有多种,以1-9开头的正负整数为十进制,以0开头的正负整数为八进制数,以0x或者0X开头的正负整数为数。
你的答案:十六进制 (得分1.0 分);参考答案:十六进制2. ( 2.0分) 一个类如果实现一个接口,那么它需要实现接口中的全部,否则该类就必须定义为。
你的答案:方法‖抽象类 (得分2.0 分);参考答案:方法‖抽象(或abstract)3. ( 3.0分) 下列程序实现从控制台输入并读取输出字符串.请将程序补充完整import java.io.*;public class CharInput {public static void main(String args[]) throws java.io.IOException{String s;InputStreamReader ir;BufferedReader in;ir=new____________(System.in);in=new____________(ir);while((s=in._________)!=null) {System.out.println(“R ead;”+s);}}}你的答案:InputStreamReader‖BufferedReader‖read line() (得分3.0 分);参考答案:InputStreamReader‖BufferedReader‖readLine( )4. ( 1.0分)线程类型中的yield()方法只能让相同优先级或者更高优先级、处于状态的线程获得运行机会。
你的答案:就绪 (得分1.0 分);参考答案:就绪5. ( 1.0分) 在非静态成员方法中,可以使用关键字访问类的其他非静态成员。
你的答案: this (得分1.0 分);参考答案:this6. ( 1.0分) Java定义的变量要求赋初值,如果没有显式赋值,整型变量获得的值是0,实型变量的值是,布尔类型数据的量是false,复合数据变量的值是分null。
目录一、判断题- 1 -二、选择题- 3 -三、填空题- 16 -四、写出下列程序完成的功能- 24 -五、写出下面程序的运行结果- 28 -六、使用Java语言编写程序- 31 -七、简答题- 32 -Java程序设计习题集一、判断题1.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。
( F )2.有的类定义时可以不定义构造函数,所以构造函数不是必需的。
( F ) 3.类及其属性、方法可以同时有一个以上的修饰符来修饰。
( T ) 4.Java的屏幕坐标是以像素为单位,容器的左下角被定为坐标的起点。
( F )(应该是左上角)5.抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。
( F) 6.Final类中的属性和方法都必须被final修饰符修饰。
( F )(静态的必须被静态的修饰符修饰)7.最终类不能派生子类,最终方法不能被覆盖。
(T )8.子类要调用父类的方法,必须使用super关键字。
( T )9.一个Java类可以有多个父类。
( F )10.如果p是父类Parent的对象,而c是子类Child的对象,则语句c = p 是正确的。
( F )11.一个类如果实现了*个接口,则它必须重载该接口中的所有方法。
( T )12.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。
( T )13.接口是特殊的类,所以接口也可以继承,子接口将继承父接口的所有常量和抽象方法。
( T )14.用“+”可以实现字符串的拼接,用- 可以从一个字符串中去除一个字符子串。
( F )15.一个容器中可以混合使用多种布局策略。
( T )16.一个线程对象的具体操作是由run()方法的容确定的,但是Thread类的run()方法是空的,其中没有容;所以用户程序要么派生一个Thread的子类并在子类里重新定义run()方法,要么使一个类实现Runnable接口并书写其中run()方法的方法体。
java程序设计试题及答案一、选择题1. 在Java中,以下哪个关键字用于定义一个类?A. classB. interfaceC. enumD. struct答案:A2. Java中的“==”操作符用于比较什么?A. 引用是否相同B. 引用所指向的对象的值是否相同C. 基本数据类型的值是否相同D. 引用所指向的对象的内存地址是否相同答案:C3. 下列哪个是Java的合法标识符?A. 2variableB. variable-nameC. #variableD. variable$name答案:B4. Java中,哪个关键字用于实现多态?A. abstractB. finalC. overrideD. implements答案:C5. 在Java中,以下哪个是正确的数组初始化方式?A. int[] array = new int[5] = {1, 2, 3};B. int array[] = {1, 2, 3, 4, 5};C. int array = new int[5] = {1, 2, 3, 4, 5};D. int[] array = {1, 2, 3, 4, 5};答案:D二、填空题根据题目要求,填空题需要根据题目所给的上下文,填写正确的信息。
1. Java是一种______语言。
答案:面向对象2. 在Java中,所有的类都是从______类直接或间接继承的。
答案:Object3. Java中的集合框架中,List接口的实现类ArrayList是______的。
答案:有序4. Java中的异常处理机制是通过______关键字实现的。
答案:try-catch5. Java中的包是用来组织类和接口的,使用______关键字来声明一个包。
答案:package三、简答题1. 简述Java中接口和抽象类的区别。
答案:接口(interface)是一种完全抽象的类型,它可以包含抽象方法和默认方法,但不能有具体实现。
java程序设计期末考试题及答案一、选择题(每题2分,共20分)1. 在Java中,以下哪个关键字用于声明一个类?A. classB. interfaceC. structD. enum答案:A2. Java中,哪个类是所有Java类的根类?A. ObjectB. SystemC. StringD. Math答案:A3. 下列哪个数据类型是Java中的原始数据类型?A. StringB. IntegerC. intD. ArrayList答案:C4. 在Java中,哪个关键字用于定义一个方法?A. functionB. methodC. defD. void5. 下列哪个选项是Java中的合法标识符?A. 2variableB. variable2C. $variableD. variable-答案:B6. 在Java中,哪个关键字用于实现多态?A. extendsB. implementsC. overrideD. abstract答案:A7. Java中的集合框架中,哪个接口提供了添加和删除元素的方法?A. ListB. SetC. MapD. Queue答案:A8. 在Java中,下列哪个关键字用于抛出异常?A. tryB. catchC. throwD. finally答案:C9. Java中,哪个关键字用于声明一个线程?B. runnableC. synchronizedD. volatile答案:B10. 在Java中,下列哪个选项是正确的字符串连接操作?A. "Hello" + 5B. "Hello" + "World"C. 5 + "Hello"D. "Hello" * 3答案:B二、填空题(每题2分,共20分)1. Java中的________关键字用于声明一个接口。
答案:interface2. Java中的________关键字用于实现一个接口。
Java语言中的关键字用法1、Java语言中有4种基本的整数类型,哪种类型所占的内存空间最小,写出定义该类型的关键字_____________。
byte2、Java语言中有4种基本的整数类型,哪种类型所占的内存空间最大,写出定义该类型的关键字_____________。
long3、Java中使用_____定义的数据类型是采用Unicode编码的。
char4、Java中存在一种基本的数据类型,该类型定义的变量不能与其他类型转换,定义该类型用___________。
boolean5、布尔型定义的成员变量是有默认值的,它的值是_________。
false6、定义变量保存含有小数的数据时,使用_____定义的变量精度比较高。
double7、当一个函数没有返回值时,应该使用_______来定义该函数类型。
void8、在循环语句中,使用__________能够从循环中跳出,并结束循环。
break9、在循环语句中,使用________能够从循环中跳到循环开始位置,执行下一次循环。
continue10、当有两个比较语句需要同时满足才能得到正确结果,应使用______连接这两个比较语句。
&&11、当有两个比较语句只需要满足其中一条就能得到正确结果,应使用______连接这两个比较语句。
||12、若希望一条语句得到相反的结果时,应该在改语句前加上________。
!13、当有两个比较语句得到的结果不相同时才是正确的结果,应使用______连接这两个比较语句。
^14、在switch多分支语句中,用case后跟上各种比较的值,其余的值是使用________表示。
default15、if语句用于判断一个条件是否成立,如果成立则执行其中的语句,当不成立时执行_______中的语句。
else16、当希望一个类中的成员不能在类的外部访问时,应使用______修饰符定义该成员。
private17、使用_______修饰符定义的成员可以在类外部通过对象来直接访问。
《java程序设计》1.填空题(1)Java程序编译成(class )文件(2)Java程序在(JVM )上执行(3)Java程序的执行方式是(半编译和半解释型)执行的(4)在Java程序中,创建对象的操作是(new )(5)在Java语言中,指明一个类从父类派生的关键字是(extends )(6)线程是进程中的一个执行(单元)(7)在Java语言中,指代父类的关键字是(super )(8)表明一个变量是数组的符号是([] )(9)在Java程序中,用关键字(import )引入其它文件中的类(10)在Java程序中定义包的关键字为(package )2.简答题(1)简述Java语言的特点。
答:Java语言的特点有以下几点:1.简单性。
2.面向对象。
3.平台无关性。
4.可移植性。
5.解释性。
6.离性能。
7.动态性。
8.可靠性和安全性。
9.多线程。
10.分布式处理。
(2)简述面向对象程序设计的三大基本特点。
(3)答:封装性:封装性是指将对象相关的信息和行为状态捆绑成一个单元,即将对象封装为一个具体的类。
封装隐藏了对象的具体实现,当要操纵对象时,只需调用其中的方法,而不用管方法的具体实现。
继承性:一个类继承另一个类,继承者可以获得被继承类的所有方法和属性,并且可以根据实际的需要添加新的方法或者对被继承类中的方法进行覆写,被继承者称为父类或者超类,继承者称为子类或导出类,继承提高了程序代码的可重用性,Java中一个子类只能继承一个父类,Object类是所有类的最终父类。
多态性:多态性是指不同的对象对同一事物而做出的相同行为,一个类A可以指向其自身类和其导出类,一个接口可以指向其接口实现类,在方法参数中,使用多态可以提高参数的灵活性。
(4)解释Java程序跨平台的原理。
答:ava源码--->JVM虚拟机编译---->.class文件--->各个平台的Java虚拟机加载执行.class文件Java程序实际是在Java虚拟机(JRE是软件实现)中运行,Java虚拟机类似一个模拟执行环境,在不同的操作系统上拥有不同的Java虚拟机实现,但是这些Java虚拟机遵循统一的规范来解释class文件,并将class文件中的指令转换为本地操作系统对应的指令,这样就实现了相同的class文件,可以通过Java虚拟机转换为对应操作系统上的对应指令,实现class 文件,也就是Java程序的跨平台性。
1. ( 分)Java中预定义的数据类型中都有对应的常量,对于整型直接数,他的形式又有多种,以1-9开头的正负整数为十进制,以0开头的正负整数为八进制数,以0x或者0X开头的正负整数为数。
你的答案:十六进制(得分分);参考答案:十六进制2. ( 分) 一个类如果实现一个接口,那么它需要实现接口中的全部,否则该类就必须定义为。
你的答案:方法‖抽象类(得分分);参考答案:方法‖抽象(或abstract)3. ( 分) 下列程序实现从控制台输入并读取输出字符串.请将程序补充完整import .*; public class CharInput {public static void main(String args[]) throwsString s;InputStreamReader ir;BufferedReader in;ir=new____________;in=new____________(ir);while((s=!=null) {}}}你的答案:InputStreamReader‖BufferedRead er‖readline()(得分分);参考答案:InputStrea mReader‖BufferedReader‖re adLine()4. ( 分)线程类型中的yield()方法只能让相同优先级或者更高优先级、处于状态的线程获得运行机会。
你的答案:就绪(得分分);参考答案:就绪5. ( 分) 在非静态成员方法中,可以使用关键字访问类的其他非静态成员。
你的答案:this (得分分);参考答案:this6. ( 分) Java定义的变量要求赋初值,如果没有显式赋值,整型变量获得的值是0,实型变量的值是,布尔类型数据的量是false,复合数据变量的值是分null。
你的答案:(得分分);参考答案:7. ( 分) 程序int x = 16; int y= x<100x*100:x*10; 变量y值是。
java程序设计考试试题及答案一、选择题(每题2分,共20分)1. Java中,下列哪个关键字用于声明一个类?()A. classB. publicC. privateD. static答案:A2. 下列哪个选项是Java语言的特性?()A. 多线程B. 编译型C. 动态链接D. 所有选项答案:D3. 在Java中,哪个修饰符用于声明一个方法只能由类本身和子类访问?()A. publicB. protectedC. privateD. static答案:B4. Java中,下列哪个关键字用于声明一个接口?()A. classB. interfaceC. publicD. abstract答案:B5. 在Java中,下列哪个关键字用于创建一个抽象类?()A. abstractB. finalC. staticD. interface答案:A6. 下列哪个选项是Java集合框架中的主要接口?()A. ListB. SetC. MapD. 所有选项答案:D7. Java中,下列哪个关键字用于声明一个方法没有返回值?()A. voidB. returnC. nullD. none答案:A8. Java中,下列哪个关键字用于声明一个方法可以被重写?()A. overrideB. extendsC. implementsD. abstract答案:D9. 在Java中,下列哪个关键字用于声明一个变量是静态的?()A. staticB. finalC. transientD. volatile答案:A10. Java中,下列哪个关键字用于声明一个变量是常量?()A. finalB. staticC. transientD. volatile答案:A二、填空题(每题2分,共20分)1. Java程序的执行入口点是________方法。
答案:main2. 在Java中,________关键字用于声明一个变量的值不能被修改。
JAVA 复习1、面向对象程序设计的三个特征是_封装、多态、继承。
2、 Java 语言的主要特点有简单性、安全性、面向对象、平台无关性。
3、 Java 是面向对象语言,类是客观事物的_抽象_ __,而对象是类的_实例_ __。
4、类_ _是Java 程序中基本的结构单位。
5、 Java 语言是一种完全的_面向对象_程序设计语言6、布尔型常量有两个值,它们分别true_ _、_ false _7、表达式 1/2*9 的计算结果是0 。
8、表达式“b”+10的值为_”b10”,‘b'+10的值为108__9、String s1=“China”; int n=s1.length( ); n 的值为_5__10、_ 常量名__必须完全大写。
11、Java 中用于定义整形变量的关键字有四个:byte、_short__、_int___、long。
12、在Java 语言中,简单数据类型包括:整数类型、浮点类型、字符类型_和布尔类型。
13、Java 的类型、单精度浮点型、布尔型数据的保留字分别是:float_、boolean。
14、JAVA 语言中提供了两种类型的字符串类来处理字符串,它们是String_和StringBuffer 类15、Java 程序的种类有:内嵌于_HTML__文件中,由浏览器来观看的_applet___,必须继承__Applet __;可独立运行的_application___,必须包含_main()方法__16、Java 语言中,所有的类都是Object 的子类,Java 的窗口通常是JFrame__的子类,抽象_类只能定义但不能被实例化,_ 最终_类不能被继承异常类都是_Exception_ 的子类。
17、Java 源程序文件和字节码文件的扩展名分别为_.java___和_.class___18、一般Java 程序的类体由两部分组成:一部分是_ 属性_,另一部分是_方法_19、子类对父类继承来的属性重新定义称为__ 重写__。
Java程序设计试题答案一、填空题1.(1)java.applet.Applet、(2) javax.swing.JApplet、(3)浏览器2.(1)HTML文件、(2)HTML文档中PARAM3.(1)Color、(2)13、(3)24、红(R)、绿(G)、蓝(B)、(4) 0~2554.(1)Java Applet中没有main()方法5.(1)void paint(Graphics g)方法、(2)void update(Graphics g)方法、(3) void repaint()方法6.(1)Font、(2)Font、(3)Font(String name,int style,int size)7.(1)public、(2)java8.(1)初始化init()、(2)开始执行start()、(3)停止执行stop()、(4)退出destroy()、(5)绘画paint()9.(1)InputStream、(2)OutputStream、(3)Reader、(4)Writer10.(1)输入流和输出流、(2)字节流和字符流二、判断题1.√2.√3.×4.√5.×6.×7.√8.√9.×10.√三、单选题1.A2.B3.B4.C5.C6.C7.B8.C9.C10.A四、简答题1.答:double s=0.0;For(int i=1;i<=10;i++)S=s+1.0/i;2.答:创建所需要的对象、都设置初始状态、装载图像、设置参数等。
3.答:先使用add()方法向容器添加组件,然后调用setBounds()方法设置组件在容器中的位置和组件本身的大小。
4.答:对话框分为强制型和非强制型,强制型对话框强制对话过程不能中断,非强制型对话框可以中断对话过程。
5.答:声明实现Runnable接口的类,在类内实现run()方法;并在类内声明线程对象,在init()方法或start()方法中创建新线程;并在start()方法中启动新线程。
《JAVA程序设计》复习题之(二)填空题1. Java是目前最广泛的__________编程语言之一。
2. Java具有简单、___________、稳定、与平台无关、解释型、多线程、动态等特点。
3. JDK开发java程序需三个步骤,分别为______________,编译java源程序,运行java源程序。
4.Java具有简单、面向对象、稳定、与平台无关、解释型、___________、动态等特点。
5.编写Java程序,可以使用一个__________来编写源文件。
6.把编写好的Java源文件保存起来,原文件的扩展名必须是___________。
7.用JDK编译Java源程序,使用的命令是__________,编译源文件得到字节码文件。
8. Java源程序编译后生成的字节码文件扩展名为__________。
9.用JDK运行Java应用程序,使用的命令是__________。
10. Java程序分为两类,即___________和Java小应用程序。
11.用JDK工具,显示Applet程序运行结果的命令是___________。
12. Java程序分为两类,即Java应用程序和___________。
13.一个Java源程序是由若干个___________组成。
14. __________是Java的关键字,用来定义类。
15. Java应用程序中有多个类时,java命令后的类名必须是包含了___________方法的那个类的名字。
16.一个Java应用程序必须且只有一个类含有___________方法。
17.在一个Java应用程序中main方法必须被说明为_____________。
18. Java中所有程序都使用方法,应用程序以______________方法开始。
19. Java源文件中有多个类,但只能有一个类是____________类。
20.一个Java Applet 不再需要main方法,但必须有一个类扩展了_____________类。
/*-------------------------------------------------------【程序改错】---------------------------------------------------------题目:用循环语句实现打印1到100之间的自然数-------------------------------------------------------*/public class Test {public static void main(String[] args) {int i=1;/***********FOUND***********/while(i<100){System.out.println(" "+i);/***********FOUND***********/i--;}}}答案:=======(答案1)=======while(i<=100)=======(答案2)=======i++;=========或=========i=i+1;/*-------------------------------------------------------【程序改错】---------------------------------------------------------题目:定义一个学生类,其中属性有字符串类型姓名,方法有对属性name进行访问的访问器方法,请改正程序的错误-------------------------------------------------------*/pulic class Student{private String name;/***********FOUND***********/public void setName(char name){=name;}/***********FOUND***********/public void getName(){ return ;}}答案:=======(答案1)=======public void setName(String name)=======(答案2)=======public String getName()/*-------------------------------------------------------【程序改错】---------------------------------------------------------题目:定义一个汽车类,成员变量有载客人数、重量和颜色。
JAVA语言程序设计考试试题及参考答案一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。
1.下列语句序列执行后,k 的值是( B )。
int m=3, n=6, k=0;while( (m++) < ( -- n) ) ++k;A) 0 B) 1 C) 2 D) 32.设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( B )。
A) i = i + 2 B) a[0] = 7;C) i++ - --j; D) a(0) = 66;3.Java语言的类间的继承关系是( B )。
A) 多重的 B) 单重的 C) 线程的 D) 不能继承4.设有定义 int i = 6 ;,则执行以下语句后,i 的值为( C )。
i += i - 1;A) 10 B) 121 C) 11 D) 1005.下列选项中,用于在定义子类时声明父类名的关键字是( C )。
A)interface B) package C) extends D) class6.若已定义 byte[ ] x= {11,22,33,-66} ;其中0≤k≤3,则对x数组元素错误的引用是( C )。
A) x[5-3] B) x[k] C) x[k+5] D) x[0]7.下列语句序列执行后,ch1 的值是( B )。
char ch1='A',ch2='W';if(ch1 + 2 < ch2 ) ++ch1;A) 'A' B) 'B' C) 'C' D) B8.下列语句序列执行后,i 的值是( D )。
int i=8, j=16;if( i-1 > j ) i--; else j--;A) 15 B) 16 C) 7 D) 89.下列语句序列执行后,k 的值是( C )。
第一套1、程序填空题1)【参考答案】第一处:* 第二处:'Z' 第三处:tt2)【参考答案】第一处:char 第二处:ch<='9' 第三处:'0'2、程序改错题【参考答案】第一处:c=c-32;改为c=c+32; 第二处:c=c-5;改为c=c+5;2、程序设计题【参考答案】void fun(char *s){ int i=0;/*假如s[i]不为字符串结束符,则继续循环,否则退出循环*/while (s[i]!='\0')/*假如s[i]为大写字母Z 且在字符串中下标为奇数的位置上,则转换成小写字母z*/{ if ((s[i]=='Z') && (i%2==1))s[i]='z';/*假如s[i]为除大写字母Z 以外的字母,则直接转换成该字母的小写字母状态的下一个字母*/else if ((s[i]>='A' && s[i]<'Z') && (i%2==1))s[i]=s[i]+33;i++;}}【解题思路】将s 所指字符串中下标为奇数位置上的大写字母转换为字母序列中的下一个小写字母,若该位置上是小写字母,则不转换;若该位置上是大写字母Z,则仅转换成小写字母z。
判断字符为大写字母的方法是:判断字符的ASCII 值是否大于A小于Z。
判断下标为奇数,用i%2 等于1 来判断。
1、程序填空题1)【参考答案】第一处:n >0 第二处:n%10+'0' 第三处:str[i]= ′\0′2)【参考答案】第一处:s[i] >= ′0′ &&s[i]< = ′9′第二处:s[i]- ′0′第三处:n2、程序改错题【参考答案】第一处:if(('a'<=tt[i]) || (tt[i]<='z'))改为if(('a'< =tt[i]) && (tt[i]< ='z'))第二处:tt[i]+=32;改为tt[i]-=32;3、程序设计题【参考答案】long fun(char *p){ long n=0;攀枝花学院计算机基础教研室第1页共3页int flag=0;/*通过循环语句移动指针,取出指针所在位置上的字符*/while(*p!='\0'){ if(*p=='-') /*判断其是否为负号*/flag=1;else if (*p=='+') /*判断其是否为正号*/flag=0;else /*判断其是否为数字字符*/n=n*10+(*p-'0'); /*将数字字符转化为相应的数值*/p++;}if (flag==1) n=-n;return n;}【解题思路】通过循环语句移动指针,取出指针所在位置上的字符,先判断其为正负号还是为数字字符,如果为数字字符则将其转化为相应的数值,否则作正负标记。
《JA V A程序设计》练习题一、单选择题1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。
A. javaB. .classC. htmlD. .exe2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( A)。
A. 3B. 3. 5C. 4D. 53、不允许作为类及类成员的访问控制符的是( C )。
A. publicB. privateC. staticD. protected4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A)。
A. static void method( )B. public void method( )C. final void method( )D. abstract void method( )5、关于选择结构下列哪个说法正确?( B )A.if语句和else语句必须成对出现B.if语句可以没有else语句对应C.switch结构中每个case语句中必须用break语句D.switch结构中必须有default语句6、while循环和do…while循环的区别是:( D)A.没有区别,这两个结构任何情况下效果一样B.while循环比do…while循环执行效率高C.while循环是先循环后判断,所以循环体至少被执行一次D.do…while循环是先循环后判断,所以循环体至少被执行一次7、关于for循环和while循环的说法哪个正确?( B)A.while循环先判断后执行,for循环先执行后判断。
B.while循环判断条件一般是程序结果,for循环的判断条件一般是非程序结果C.两种循环任何时候都不可以替换D.两种循环结构中都必须有循环体,循环体不能为空8、下列修饰符中与访问控制无关的是( D)A.private B.publicC.protected D.final9、void的含义:( A)A.方法没有返回值B.方法体为空C.没有意义 D.定义方法时必须使用10、return语句:( C )A.只能让方法返回数值B.方法都必须含有C.方法中可以有多句return D.不能用来返回对象11、关于对象成员占用内存的说法哪个正确?( B)A.同一个类的对象共用同一段内存B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C.对象的方法不占用内存D.以上都不对12、下列说法哪个正确?( C)A.不需要定义类,就能创建对象B.对象中必须有属性和方法C.属性可以是简单变量,也可以是一个对象D、属性必须是简单变量13、下列说法哪个正确?( A )A、一个程序可以包含多个源文件B、一个源文件中只能有一个类C、一个源文件中可以有多个公共类D、一个源文件只能供一个程序使用14、关于方法main()的说法哪个正确?( C )A.方法main()只能放在公共类中B main()的头定义可以根据情况任意更改C.一个类中可以没有main()方法D.所有对象的创建都必须放在main()方法中15、构造函数何时被调用?( A )A、创建对象时B、类定义时C、使用对象的方法时D、使用对象的属性时16、抽象方法:( C )A、可以有方法体B、可以出现在非抽象类中C、是没有方法体的方法D、抽象类中的方法都是抽象方法17、关于继承的说法正确的是:( B )A、子类将继承父类所有的属性和方法。
Java语言中的关键字用法
1、Java语言中有4种基本的整数类型,哪种类型所占的内存空间最小,写出
定义该类型的关键字_____________。
byte
2、Java语言中有4种基本的整数类型,哪种类型所占的内存空间最大,写出
定义该类型的关键字_____________。
long
3、Java中使用_____定义的数据类型是采用Unicode编码的。
char
4、Java中存在一种基本的数据类型,该类型定义的变量不能与其他类型转换,
定义该类型用___________。
boolean
5、布尔型定义的成员变量是有默认值的,它的值是_________。
false
6、定义变量保存含有小数的数据时,使用_____定义的变量精度比较高。
double
7、当一个函数没有返回值时,应该使用_______来定义该函数类型。
void
8、在循环语句中,使用__________能够从循环中跳出,并结束循环。
break
9、在循环语句中,使用________能够从循环中跳到循环开始位置,执行下一次
循环。
continue
10、当有两个比较语句需要同时满足才能得到正确结果,应使用______连接
这两个比较语句。
&&
11、当有两个比较语句只需要满足其中一条就能得到正确结果,应使用
______连接这两个比较语句。
||
12、若希望一条语句得到相反的结果时,应该在改语句前加上________。
!
13、当有两个比较语句得到的结果不相同时才是正确的结果,应使用______
连接这两个比较语句。
^
14、在switch多分支语句中,用case后跟上各种比较的值,其余的值是使
用________表示。
default
15、if语句用于判断一个条件是否成立,如果成立则执行其中的语句,当不
成立时执行_______中的语句。
else
16、当希望一个类中的成员不能在类的外部访问时,应使用______修饰符定
义该成员。
private
17、使用_______修饰符定义的成员可以在类外部通过对象来直接访问。
public
18、使用________修饰符定义变量,使得该变量只能被初始化一次后,就不
能修改了。
final
19、使用_______修饰符定义的类成员,可以通过类直接访问而不需要创建对
象后再访问。
static
20、用______修饰符定义的方法,没有方法体。
abstract
21、使用_______修饰符定义的类不能实例化。
abstract
22、类的中一个成员是一个类的对象时,如果该成员没有被初始化,则该对
象的初始值是_________。
null
23、定义一个类时需要使用的关键字是_________。
class
24、当定义个新类时需要保留现有某一个类的成员,使用_______来实现。
extends
25、Java中一种特殊的类叫做接口,它使用______来定义。
interface
26、当定义一个类要实现接口时,使用________。
implements
27、在一个函数中使用_______来返回一个值。
return
28、在类的非静态成员函数中,使用_______来表示当前调用该函数的对象
this
29、在子类构造函数中使用______来调用父类的构造函数。
super
30、如果某一个类的类名是MyClass那么它的构造函数名称是_________(只
需要写出函数名称,不要加()和参数)。
MyClass
31、在一个类中,存在两个函数名称相同但是参数不同,称为重载其英文单
词是_______(全部用小写)。
overloading
32、在子类中定义一个和父类中名称和参数都一样的方法,称为方法的重写,
其英文单词是________(全部小写)。
override
33、在一个类中需要使用到另一个包中的类时使用______来导入。
34、如果将一个类定义在某一个包下,则需要在定义该文件的第一行,使用
______来声明所在的包名。
package
35、字符串String类中,______成员函数可以取得该字符串的长度(只需写出
函数名称)。
length
36、字符串String类中使用______函数来截取其中的一段字串(只需写出函
数名称)。
substring
37、字符串String类中使用______函数来取得某一个下标位置的字符(只需
写出函数名称)。
charAt
38、字符串String类中使用_______函数来查找该字符串中是否包含某个字
符子串(只需写出函数名称)。
indexOf
39、Java中的数组都含有一个属性是_______。
40、创建对象(实例化)是使用_______来实现。
new
改错,找出以下程序中的九处语法错误并改正
class UserException implements Exception
{
String info;
public void UserException(String info)
{
info = info;
}
public void callException() throw UserException
{
throw UserException(“callException”);
}
public static void main(String args)
{
try
{
UserException ue = new UserException ();
ue. callException();
}(UserException e)
{
System.out.println(“产生异常:”+);
}final
{
System.out.println(“释放资源”);
}
}
}
1、class UserException implements Exception
改成class UserException extends Exception
2、public void UserException(String info)
改成public UserException(String info)
3、info = info;
改成 = info;
4、public void callException() throw UserException
改成public void callException() throws UserException 5、throw UserException(“callException”);
改成throw new UserException(“callException”);
6、public static void main(String args)
改成public static void main(String []args)
或public static void main(String args[])
7、UserException ue = new UserException ();
改成UserException ue = new UserException (“”);
8、}(UserException e)
改成}catch (UserException e)
9、}final改成}finally。