Java语言程序设计一自考题模拟11.docx

上传人:b****6 文档编号:5827589 上传时间:2023-01-01 格式:DOCX 页数:15 大小:23.29KB
下载 相关 举报
Java语言程序设计一自考题模拟11.docx_第1页
第1页 / 共15页
Java语言程序设计一自考题模拟11.docx_第2页
第2页 / 共15页
Java语言程序设计一自考题模拟11.docx_第3页
第3页 / 共15页
Java语言程序设计一自考题模拟11.docx_第4页
第4页 / 共15页
Java语言程序设计一自考题模拟11.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

Java语言程序设计一自考题模拟11.docx

《Java语言程序设计一自考题模拟11.docx》由会员分享,可在线阅读,更多相关《Java语言程序设计一自考题模拟11.docx(15页珍藏版)》请在冰豆网上搜索。

Java语言程序设计一自考题模拟11.docx

Java语言程序设计一自考题模拟11

Java语言程序设计

(一)自考题模拟11

(总分:

100.00,做题时间:

90分钟)

一、第Ⅰ部分选择题

单项选择题(总题数:

10,分数:

10.00)

1.下述字符组合不能作为Java程序标识符的是______

(分数:

1.00)

 A.5x √

 B.大x

 C.y小

 D.Aa12

解析:

[考点]Java标识符

[解析]标识符只能由字母(包括英文字母、下画线、美元符号、文字字符)和数字组成,且不能以数字开头,所以A不对。

2.下列字符组合不能作为Java整型常量的是______

(分数:

1.00)

 A.0x3ABC

 B.0x3ACB

 C.5000

 D.078 √

解析:

[考点]Java整型常量

[解析]Java整型常量有十进制、八进制和十六进制三种。

八进制数包括0到7,不包含数字8。

A、B是十六进制数,C是十进制数,都正确。

3.在下述字符串中,不属于Java语言关键字的是______

(分数:

1.00)

 A.float

 B.new

 C.return

 D.java √

解析:

[考点]Java关键字

[解析]“java”是普通字符串,不是Java的关键字。

4.下面不是Java特点的是______

(分数:

1.00)

 A.动态性

 B.面向对象

 C.编辑型 √

 D.多线程

解析:

[考点]Java语言的特点

[解析]Java语言的特点包括:

动态性、自动回收无用内存、面向对象、与平台无关、安全性、分布式计算和多线程。

5.以下程序执行之后,输出的结果是______

System.out.println(23%-4);

(分数:

1.00)

 A.-1

 B.-5

 C.3 √

 D.5

解析:

[考点]Java语言中%运算符

[解析]%为求余运算符,求余运算所得结果的符号和被除数的符号相同。

23/4商5余3,符号为-。

所以选C。

6.若有定义intx=3,y;则执行语句y=(x++)+(x++)+(x++);后y的值为______

(分数:

1.00)

 A.9

 B.12 √

 C.15

 D.18

解析:

[考点]数据运算——自增运算

[解析]x++运算,后缀形式,表示在引用变量x之后,才是x加1。

第一个括号中的x值为3,执行完++后加1,使得第二个括号中x值变成4,同理,到第三个括号执行前,x变为5,所以y=3+4+5=12。

7.下面程序,哪一句是有问题的______

classClass6

{

intx;

voidf()

{

intclass6=1;①

x=class6;②

}

voidg()

{

inty;③

y=class6+x;④

}

}

(分数:

1.00)

 A.语句②

 B.语句①

 C.语句③ √

 D.语句③

解析:

[考点]局部变量的作用范围

[解析]语句④引用的class6非法,因为class6是在f函数中定义的局部变量,它的作用范围只能在f函数中,出了f函数就失去了意义,不能在其他函数中使用。

8.在下述Java语言语句中,错误的创建数组的方法是______

(分数:

1.00)

 A.intintArray[];intArray=newint[5];

 B.intintArray[]=newint[5];

 C.int[]intArray={1,2,3,4,5};

 D.intintArray[5]={1,2,3,4,5}; √

解析:

[考点]Java语言中数组的声明

[解析]声明数组的时候不能指定大小。

9.以下是关于字符串运算的代码,执行该代码段的输出结果是______

Strings="abcdefgh",s1,s2;

s1=s.substring

(2);s2=s.substring(2,5);System.out.println(s1+s2);

(分数:

1.00)

 A.abcdef

 B.abcdefghdefgh

 C.cdefgh

 D.cdefghcdef √

解析:

[考点]字符串操作

[解析]substring方法用于取字符串的子串。

substring

(2)表示截取从第二个字符到最后一个(从第零个开始),substring(2,5)表示截取从第二个到第五个字符。

所以答案选D。

10.以下程序的输出结果是______

publicclassClass07

{

Class07()

{

System.out.println("0param");

}

Class07(intn)

{

System.out.println(n+"param");

}

publicstaticvoidmain(String[]args);

{

Class07x=newClass07(100);

}

}

(分数:

1.00)

 A.100param √

 B.程序不错,但没有信息输出

 C.出错

 D.0param

解析:

[考点]Java语言中的构造方法的调用

[解析]生成x对象时自动调用有参数构造方法,传参数后n=100,所以输出100param。

二、第Ⅱ部分非选择题

填空题(总题数:

10,分数:

20.00)

11.Java语言最初的应用对象是1。

(分数:

2.00)

解析:

消费型电子产品[考点]Java语言基础

[解析]Java语言最初的应用对象是消费型电子产品。

12.Java中所有程序都使用方法,应用程序以1方法开始。

(分数:

2.00)

解析:

main[考点]Java应用程序

[解析]java应用程序必须在一个类中定义一个main方法,该方法代表应用的入口。

13.一个JavaApplet不再需要main方法,但必须有一个类扩展了1类。

(分数:

2.00)

解析:

Applet[考点]Java小应用程序

[解析]一个小应用程序也由若干个类组成,其中必须有一个主类,它继承系统提供的Applet类,这个类是小应用程序的主类。

14.在JavaJDK的核心中,解释器所对应的可执行文件是1。

(分数:

2.00)

解析:

java.exe[考点]Java程序的开发过程

[解析]Java解释器java.exe用来解释执行Java类文件。

15.在Java语言中,长整型long在计算机内存中占1个字节。

(分数:

2.00)

解析:

8[考点]Java整数类型

[解析]Java长整型在内存占8个字节。

16.在Java语言中,逻辑左移位运算的运算符为1。

(分数:

2.00)

解析:

<<[考点]Java移位运算

[解析]<<左移运算。

17.Java语言的控制语句有3种类型,即条件语句、1和转移语句。

(分数:

2.00)

解析:

循环语句[考点]Java语言的控制语句

[解析]Java语言的控制语句分为:

条件语句(if...else,switch)、循环语句(for,while,do...while)和转移语句(break,continue)。

18.数组声明后,必须使用1运算符分配内存空间。

(分数:

2.00)

解析:

new[考点]Java数组声明

[解析]数组的声明,类似对象的创建,都是用new关键字。

19.可以使用String类的1方法判断一个字符串的前缀是否是字符串s。

(分数:

2.00)

解析:

publicbooleanstautsWith(Strings)[考点]Java字符串操作

[解析]startsWith用来判断字符串是否以s开头。

20.接口中的方法被默认的访问权限是1。

(分数:

2.00)

解析:

public[考点]Java接口

[解析]Java中接口默认都是public的。

三、简答题(总题数:

6,分数:

18.00)

21.请写出与数学计算式

等价的Java语言表达式。

(分数:

3.00)

__________________________________________________________________________________________

正确答案:

()

解析:

(a*x+(a+x)/(5.0*a))/8

22.怎样区分应用程序和小应用程序?

(分数:

3.00)

__________________________________________________________________________________________

正确答案:

()

解析:

一个Java应用程序必须有且只有一个类含有main方法,这个类称为应用程序的主类,其main方法必须被说明为publicstaticvoid。

一个JavaApplet小应用程序不再需要man方法,但必须有一个类扩展了Applet类,即它是Applet类的主类。

23.在一个循环中使用break和continue语句有什么不同的效果?

(分数:

3.00)

__________________________________________________________________________________________

正确答案:

()

解析:

在循环中使用break语句,将使循环终止,流程跳转到break语句所在循环外面的第一个语句继续执行;在循环中使用continue语句,将提前结束本次循环,流程跳转到continue语句所在循环的第一个语句继续执行。

24.什么是方法重载?

(分数:

3.00)

__________________________________________________________________________________________

正确答案:

()

解析:

方法重载是指,一个类中可以有多个方法具有相同的名字和类型,这些方法的参数必须不同,或者是参数个数不同,或者是参数类型不同。

25.Java中如何定义和使用接口?

(分数:

3.00)

__________________________________________________________________________________________

正确答案:

()

解析:

使用关键字interface来定义一个接口,接口的定义和类的定义很相似,分为接口的声明和接口体。

一个类通过关键字implements声明自己使用一个或多个接口,如果使用多个接口,则用逗号隔开。

如果一个类使用某个接口,那么这个类必须实现该接口的所有方法。

26.简述在Java中使用this的情况。

(分数:

3.00)

__________________________________________________________________________________________

正确答案:

()

解析:

第一,通过this调用另一个构造方法,用法是this(参数列表),此法仅用在类的构造方法中,别的地方不能这么用。

第二,函数参数或者函数中的局部变量和成员变量同名的情况下,成员变量被屏蔽,此时要访问成员变量则需要用“this.成员变量名”的方式。

在没有同名的情况下,可以直接用成员变量的名字,而不用this,当然用了也不算错。

第三,在函数中,需要引用该函所属类的当前对象时,直接用this。

四、程序填空题(总题数:

5,分数:

20.00)

27.以下程序输出50以内的所有素数。

publicclasstest1_1

{

Publicstaticvoidmain(Stringargs[])

{

inti,j;

for(j=2;j<=50;j++)

for(i=2;i<=j/2;i++)

{if

(1)break;}

if(i>2)

System.out.println(j+"是素数");

}

}

(分数:

4.00)

解析:

j%ij/2[考点]循环语句

[解析]素数指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数。

本题是求50以内的素数。

首先将某数折半成j,然后依次判断这个数能否被2到j整除。

如果能整除说明这个数不是素数,继续判断下一个数,否则是素数,打印输出。

28.方法func(intn)返回十进制整数n的位数。

1func(intn)

{

intc;

for(c=0;2;c++)n/=10;

returnc;

}

(分数:

4.00)

解析:

intn!

=0[考点]Java函数

[解析]该函数的返回值类型为整数,所以第一空填int;求十进制数n的位数,则可以通过循环每次对十取整,如果取整之后的数不等于0,说明它至少还有一位数(个位数),直到n变为0,此时的循环次数c就是n的位数。

29.子类Univer_Student继承父类Student,并调用父类的构造方法。

ClassStudent

{

intnumber;Stringname;

Student(intnumber,Stringname)

{this.number=number;this.name=name;

Systemout.println("Iam"+name+"Mynumberis"+number);}

}

classUniver_Student1Student

{

boolean婚否;

Univer_Student(intnumber,Stringname,booleanb)

{

2(number,name);

婚否=b;

System.out.pritnln("婚否="+婚否);

}

}

publicclasstest1_1

{

publicstaticvoidmain(Stringargs[])

{

Univer_Studentzhang=newUniver_Student(9901,"和小林",false);}

}

(分数:

4.00)

解析:

extendssuper[考点]Java类的继承

[解析]子类用关键字extends继承父类,并且可以用super调用父类的构造方法。

30.下面程序对长度为5的数组中的每个元素赋值,然后按逆序输出。

请在横线处填入适当内容,使程序能正确运行。

java.io.*;

publicclassArrayTest{

staticvoidmain(Stringargs[]){

inti;

inta[]=1;

for(i=0;i<5;i++)

a[i]=i;

for(2;i>=0;i--)

System.out.println("a["+i+"]="+a[i]);}

}

(分数:

4.00)

解析:

newint[5]i=a.length-1[考点]数组的创建和引用

[解析]创建数组就是为数组分配存储空间,需要指定数组长度。

数组创建后,数组名就标识用于存储数组元素的存储空间,本题数组的创建采用的是声明时创建。

逆序输出需要从数组的最后一个元素开始,它的下标是数组的长度减一。

31.以下程序的输出结果是:

true,23456。

publicclassClass31

{

publicstaticvoidmain(String[]args)

{

String.str1=newString("abc");

String.str2=newString("Abc")

booleanb;

b=str1.1//忽略大小写,比较字符串s1,s2是否相等

str1=newString("0123456789");

str2=str1.2;

System.out.println(*b+","+s2);

}

}

(分数:

4.00)

解析:

equalsIgnoreCase(str2)substring[考点]String类的操作

[解析]equalsIgnoreCase是忽略大小写来比较两个字符串的内容是否相同,equals不忽略大小写;substring取源字符串的子串。

五、程序分析题(总题数:

5,分数:

20.00)

32.阅读以下程序代码,程序打印输出的结果是什么?

publicclassClass32

{

publicstaticvoidmain(String[]args)

{

booleanx=false,y=true,z=true;

x=x&&y||z;

y=x||y&&z;

z=!

(x!

=y)||(y==z);

System.out.println(x+","+y+","+z)

}

}

(分数:

4.00)

__________________________________________________________________________________________

正确答案:

()

解析:

true,true,true[考点]Java逻辑运算

[解析]&&(逻辑与),||(逻辑或),!

(逻辑否定)。

&&和||是双目运算符,!

是单目运算符。

对于&&,必须保证两个操作数都为tme,结果才为true,否则结果为false。

对于||,只要有一个操作数为true,结果就为true。

33.请给出下列程序的运行结果。

publicclassTest

{

publicstaticvoidmain()

{

inti=1,j=10;

do

{

if(i++>--j)

continue;

}

while(i<5);

System.out.println("i="+i+"j="+j);

}

}

(分数:

4.00)

__________________________________________________________________________________________

正确答案:

()

解析:

i=5,j=6[考点]Java控制语句

[解析]do-while循环,当i=5时即跳出循环;同时还考查自增、自减操作以及continue对于循环的控制。

If条件首先判断i的值是否大于j减1之后的值,然后i的值加1,条件满足则跳出本次循环;判断i是否小于5,小于5的话继续执行if判断。

当i执行到等于4时,此时j等于6,条件仍不满足,判断完if之后i加1变为5,判断while条件,5不小于5,while循环结束,i=5,j=6。

34.写出下面程序的运行结果。

publicclassTestextendsTT

{

publicstaticvoidmain(Stringargs[])

{

Testt=newTest("Tom.");

}

publicTest(Strings)

{

super(s);

System.out.print("Howareyou?

");

}

publicTest()

{

this("IamJack.");

}

}

classTT

{

publicTT()

{

System.out.print("Hi!

");

}

publicTT(Strings)

{

this();

System.out.print("Iam"+s);

}

}

(分数:

4.00)

__________________________________________________________________________________________

正确答案:

()

解析:

Hi!

IamTom.Howareyou?

[考点]Java类的继承以及构造方法的调用

[解析]程序的入口从Test的main方法开始,首先创建一个Test对象,此时会调用Test的有参数的构造方法,并将“Tom”传给s。

在Test的构造方法中又通过super调用了父类TT的有参数的构造方法TT(Strings)。

在这个方法中又通过this()调用了TT的无参数构造方法TT(),此时打印输出“Hii”,之后接着打印输出“IamTom.”,此时执行完父类TT的构造方法,重新返回super这个地方,接着向下执行输出“Howareyou?

35.阅读以下程序代码,程序打印输出的结果是什么?

publicclassClass35

{

publicstaticvoidmain(String[]args)

{

Strings1=newString("abcdefg"),s2="abcdefg";

System.out.prinln(s1==s2);

System.out.prinln(s1.equals(s2));

System.out.println(s1.endsWith(s2)==s1.startsWith(s2));

}

}

(分数:

4.00)

__________________________________________________________________________________________

正确答案:

()

解析:

false,true,true[考点]String类API

[解析]==和equals的区别:

==是判断两个字符串对象是否是同一个对象,即两个对象的内存地址是否相同;equals是判断两个字符串的值是否相同。

题目中s2相当于一个值,而s1是指向这个值的引用,它代表的值和s2是一样的。

endsWith()和startsWith()是String类的两个方法,分别判断前一个字符串是否以后一个字符串结束或者开始,它们的返回类型为boolean类型。

s1和s2的值相等,所以这两个方法的返回值都是true,即相等。

注意区分字符串中的等号和普通类型的等号。

36.写出下面程序的运行结果。

publicstaticvoidmain(String[]args){

Stringstr="puclicclass,Childextends()Father[]implementsInters";

StringTokenizerstr2=newStringTokenizer(str,",()[]");

intn=str2.countTokens();

System.out.println("单词个数:

"+n+",如下所示:

");

while(str2.hasMoreTokens()){

System.out.printl

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工作范文 > 演讲主持

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1