2015年全國(guó)計(jì)算機(jī)二級(jí)考試Java模擬試題(二)
點(diǎn)擊查看試題答案及解析
一、選擇題(每小題1分,共40小題,共40分)
1.常采用的兩種存儲(chǔ)結(jié)構(gòu)是( )。
A.順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
B.散列方法和索引方式
C.鏈表存儲(chǔ)結(jié)構(gòu)和數(shù)組
D.線性存儲(chǔ)結(jié)構(gòu)和非線性存儲(chǔ)結(jié)構(gòu)
2.在深度為5的滿二叉樹(shù)中,葉子結(jié)點(diǎn)的個(gè)數(shù)為( )。
A.32
B.31
C.16
D.15
3.下列敘述中錯(cuò)誤的是( )。
A.線性表是由n個(gè)元素組成的一個(gè)有限序列
B.線性表是一種線性結(jié)構(gòu)
C.線性表的所有結(jié)點(diǎn)有且僅有一個(gè)前件和后件
D.線性表可以是空表
4.數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的( )。
A.存儲(chǔ)問(wèn)題
B.共享問(wèn)題
C.安全問(wèn)題
D.保護(hù)問(wèn)題
5.在設(shè)計(jì)程序時(shí),應(yīng)采納的原則之一是( )。
A.不限制goto語(yǔ)句的使用
B.減少或取消注解行
C.程序越短越好
D.程序結(jié)構(gòu)應(yīng)有助于讀者理解
6.結(jié)構(gòu)化程序設(shè)計(jì)的核心和基礎(chǔ)是( )。
A.結(jié)構(gòu)化分析方法
B.結(jié)構(gòu)化設(shè)計(jì)方法
C.結(jié)構(gòu)化設(shè)計(jì)理論
D.結(jié)構(gòu)化編程方法
7.對(duì)下列二叉樹(shù)進(jìn)行中序遍歷的結(jié)果是( )。
A.ACBDFEG
B.ACBDFGE
C.ABDCGEF
D.FCADBEG
8.軟件設(shè)計(jì)中模塊劃分應(yīng)遵循的準(zhǔn)則是( )。
A.低內(nèi)聚低耦合
B.高內(nèi)聚低耦合
C.低內(nèi)聚高耦合
D.高內(nèi)聚高耦合
9.算法的有窮性是指( )。
A.算法程序的運(yùn)行時(shí)間是有限的
B.算法程序所處理的數(shù)據(jù)量是有限的
C.算法程序的長(zhǎng)度是有限的
D.算法只能被有限的用戶(hù)使用
10.有3個(gè)關(guān)系R、S和T如下:
由關(guān)系R和S通過(guò)運(yùn)算得到關(guān)系T,則所用的運(yùn)算為( )。
A.并
B.自然連接
C.笛卡兒積
D.交
11.破壞死鎖的4個(gè)必要條件之一就可以預(yù)防死鎖。假如規(guī)定一個(gè)進(jìn)程在請(qǐng)求新資源之前首先釋放已占有的資源則是破壞了( )條件。
A.互斥使用
B.部分分配
C.不可剝奪
D.環(huán)路等待
12.設(shè)有字符序列(Q,H,C,Y,P,A,M,S,R,D,F(xiàn),X),則新序列(F,H,C,D,P,A,M,Q,R,S,Y,X)是下列( )排序算法一趟掃描的結(jié)果。
A.起泡排序
B.初始步長(zhǎng)為4的希爾排序
C.二路歸并排序
D.以第一個(gè)元素為分界元素的快速排序
13.下列與算法有關(guān)的敘述中,不正確的是( )。
A.運(yùn)算是數(shù)據(jù)結(jié)構(gòu)的一個(gè)重要方面,運(yùn)算的實(shí)現(xiàn)步驟用算法來(lái)描述
B.算法是精確定義的一系列規(guī)則,它指出怎樣從給定的輸入信息經(jīng)過(guò)有限步驟產(chǎn)生所求的輸出信息
C.算法的設(shè)計(jì)采用由粗到細(xì),由抽象到具體的逐步求精的方法
D.對(duì)于算法的分析,指的是分析算法運(yùn)行所要占用的機(jī)器時(shí)間,即算法的時(shí)間代價(jià)
14.下列關(guān)于數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)的敘述中,正確的是( )。
A.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是數(shù)據(jù)間關(guān)系的抽象描述
B.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)器中的實(shí)現(xiàn)
C.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)分為線性結(jié)構(gòu)和非線性結(jié)構(gòu)
D.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)對(duì)數(shù)據(jù)的具體實(shí)現(xiàn)沒(méi)有影響
15.設(shè)有一個(gè)已按各元素的值排好序的順序表(長(zhǎng)度大于2),現(xiàn)分別用順序查找法和二分查找法查找與給定值k相等的元素,比較的次數(shù)分別是s和b,在查找不成功情況下s和b的關(guān)系是( )。
A.s=b
B.s>b
C.s D.s>=b
16.下列不屬于虛擬機(jī)執(zhí)行過(guò)程的特點(diǎn)的是( )。
A.多線程
B.動(dòng)態(tài)連接
C.異常處理
D.代碼安全檢查
17.下列說(shuō)法中,正確的一項(xiàng)是( )。
A.Java語(yǔ)言是以類(lèi)為程序的基本單位的
B.Java語(yǔ)言是不分大小寫(xiě)的
C.多行注釋語(yǔ)句必須以//開(kāi)始
D.在Java語(yǔ)言中,類(lèi)的源文件名和該類(lèi)名可以不相同
18.下列關(guān)于實(shí)型變量書(shū)寫(xiě)正確的是( )。
A.E3
B.2e0.3
C.1.2e3
D.1.2E0.3
19.下列與其他選項(xiàng)不相等的是( )。
A.15
B.0xF
C.015
D.0XF
20.設(shè)a=8,則表達(dá)式a>>>1的值是( )。
A.1
B.2
C.3
D.4
21.在Java中,所有類(lèi)的根類(lèi)是( )。
A.java.lang.Object
B.java.lang.Class
C.java.lang.String
D.java.lang.System
22.執(zhí)行下面程序段后,2值為( )。
int x=1,y=2,z=3;
z=z/(float)(x/y):
A.編譯無(wú)法通過(guò) B.6
C.3 D.2
23.int類(lèi)型的取值范圍為( )。
A.-216~216-1
B.-231~231-1
C.-232~232-1
D.-264~264-1
24.下列說(shuō)法中,( )是正確的。
A.子類(lèi)擁有的成員數(shù)目大于等于父類(lèi)擁有的成員數(shù)目
B.父類(lèi)代表的對(duì)象范圍比子類(lèi)廣
C.子類(lèi)要調(diào)用父類(lèi)的方法,必須使用super關(guān)鍵字
D.一個(gè)Java類(lèi)可以有多個(gè)父類(lèi)
25.執(zhí)行下列程序之后,變量n的值為( )。
public class Exam{
public static void main(String[]args){
int y=2;
int z=3:
int n=4:
n=n+-y*z/n;
System.out.println(n);
}
}
A.3 B.-l
C.-l2 D.-3
26.在Java中能實(shí)現(xiàn)多重繼承效果的方式是( )。
A.內(nèi)部類(lèi)
B.適配器
C.接口
D.同步
27.char類(lèi)型的取值范圍是( )。
A.2的-7次方~2的7次方減1
B.O~2的16次方減1
C.負(fù)2的15次方~2的15次方減1
D.O~2的8次方減1
28.能夠支持javadoc命令的注釋語(yǔ)句是( )。
A./**…//
B./*…*/
C.//
D./**…*/
29.十進(jìn)制數(shù)16的十六進(jìn)制表示格式是( )。
A.0x10
B.0x16
C.0xA
D.016
30.int型public成員變量MAX_LENGTH,該值保持為常數(shù)100,則定義這個(gè)變量的語(yǔ)句是( )。
A.public int MAX LENGTH=100
B.final int MAX—LENGTH=100
C.public const int MAX_LENGTH=100
D.public final int MAX_LENGTH=100
點(diǎn)擊查看試題答案及解析
31.Java對(duì)I/O訪問(wèn)所提供的同步處理機(jī)制是( )。
A.字節(jié)流
B.過(guò)濾流
C.字符流
D.壓縮文件流
32.請(qǐng)閱讀下面程序
public class ThreadTest{
public static void main(String args[])throws Ex-
ception{
int i=0;
Hello t=new Hello();
;
while(true){
System.Out.println("Good Morning"+i++):
if(i= =2&&t.isAlive()){
System.out.println("Main waiting for Hel-
lo!");
t.join();//等待t運(yùn)行結(jié)束
}
if(i= =5)break;}
}
}
class Hello extends Thread{
int l;
public void run(){
while(true)(
System.Out.println("Hell0"+i++);
if(i= =5)break;)))
為使該程序正確執(zhí)行,下畫(huà)線處的語(yǔ)句應(yīng)是( )。
A.t.sleep()
B.t.yield()
C.t.interrupt()
D.t.start()
33.下列敘述中,錯(cuò)誤的是( )。
A.Jbutton類(lèi)和標(biāo)簽類(lèi)可顯示圖標(biāo)和文本
B.Button類(lèi)和標(biāo)簽類(lèi)可顯示圖標(biāo)和文本
C.AWT構(gòu)件能直接添加到頂層容器中
D.Swing構(gòu)件不能直接添加到頂層容器中
34.下列敘述中,錯(cuò)誤的是( )。
A.Applet的默認(rèn)布局管理器是FlowLayout
B.JApplet中增加構(gòu)件是加到JApplet的內(nèi)容面板上,不是直接加到JApplet中
C.JApplet的內(nèi)容面板的默認(rèn)布局管理器是Border-Layout
D.JApplet的內(nèi)容面板的默認(rèn)布局管理器是FlowLay-out
35.下列敘述中,錯(cuò)誤的是( )。
A.Java中,方法的重載是指多個(gè)方法可以共享同一個(gè)名字
B.Java中,用abstract裝飾的類(lèi)稱(chēng)為抽象類(lèi),它不能實(shí)例化
C.Java中,接口是不包含成員變量和方法實(shí)現(xiàn)的抽象類(lèi)
D.Java中,構(gòu)造方法可以有返回值
36.要表示表格的數(shù)據(jù),需要繼承類(lèi)( )。
A.AbstraceTableModel
B.TableModel
C.JTable
D.TableModelable
37.下面程序的正確輸出是( )。
public class Hello
{
public static void main(String args[])
{
int count,xPos=25;
for(count=1;count<=10;count++)
{
if(count= =5)
Break;
system.Out.println(count);
xPos+=10:
}
}
}
A.1 2 3 4
B.1 3 4
C.編譯錯(cuò)誤
D.以上都不正確
38.在Applet生命周期中,下面方法中,在裝載Applet時(shí)被調(diào)用的是( )。
A.stop()
B.init()
C.start()
D.destroy()
39.JDBC是面向( )的。
A.過(guò)程
B.對(duì)象
C.應(yīng)用
D.用戶(hù)
40.J2SDK的下載中,下列( )可以進(jìn)入J2SE下載頁(yè)面。
A.進(jìn)入http://java.sum.com
B.單擊左側(cè)Download鏈接
C.單擊頁(yè)面中的Java 2 Platform,Standard Edition鏈接
D.單擊頁(yè)面中的J2SE l.4.2鏈接
二、基本操作題(共18分)
本題定義了一個(gè)方法add(),用于求兩個(gè)整形數(shù)的和。方法中有兩個(gè)整形參數(shù)a和b,方法體中計(jì)算a和b的和sum,并將結(jié)果返回。程序中調(diào)用add()方法求整數(shù)24和34的和,并將結(jié)果打印輸出。
public class javal{
public static void main(String[]args){
int a=24,b=34;
System.out.println(add(a,b));
}
public static int add( ){
;
sum—a+b;
;
}
}
點(diǎn)擊查看試題答案及解析
三、簡(jiǎn)單應(yīng)用題(共24分)
本題中,主窗口有一個(gè)按鈕“顯示Dial09”,單擊該按鈕后顯示一個(gè)對(duì)話框,對(duì)話框的標(biāo)題是“Dial09”,其上有一個(gè)文字標(biāo)簽“歡迎學(xué)習(xí)Java.”,此時(shí)仍允許對(duì)原來(lái)窗口進(jìn)行操作,當(dāng)關(guān)閉新生成的對(duì)話框時(shí)退出程序。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class java2 extends Frame implements ActionLis-
tener{
public static void main(String args[]){
java2 f=new java2("java2");
Panel pan=new Panel();
f.init();
}
public java2(String str){
super(str);
}
public void init(){
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
setSize(200,200);
setLayout(new FlowLayout());
but=new Button("顯示Dialog");
add(but);
but.addActionListener(this);
dig=new Dialog(this,"Dialog", );
dig.setSize(100,50);
dig.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
;
}
});
dig.add("Center",new Label("歡迎學(xué)習(xí)Ja-
va."));
setVisible(true);
}
public void actionPerformed(ActionEvent e){
dig.setVisible(true);
}
private Dialog dig;
private Button but;
}
四、綜合應(yīng)用題(共18分)
本題的功能是監(jiān)聽(tīng)鼠標(biāo)的拖曳操作。窗口中有一個(gè)列表框,列表框中列出了當(dāng)前目錄的所有文件,鼠標(biāo)選中一個(gè)或多個(gè)文件后拖曳出窗口,此操作的功能是將拖曳的文件復(fù)制一份在拖曳的目的目錄下。
import java.awt.*;
import java.awt.datatransfer.*;
import java.awt.dnd.*;
import java.awt.event.*;
import java.io.*;
import java.util.*;
import javax.swing.*;
public class java3
{
public static void main(String[]args)
{
JFrame frame=new DragSourceFrame();
frame.setDefauhCloseOperation(JFrame.EXIT_
0N_CLoSE);
frame.show();
}
}
class DragSoureeFrame extends JFrame
{
public DragSourceFrame()
{
setTitle("java3");
setSize(WlDTH,HElGHT);
Container contentPane=getContentPane();
File f=new File(".").getabsoluteFile();
File[]files=f.listFiles();
model=new DefaultListModel();
for(int i=0;i try
{
model.addElement(files[i].getCanonicalFile());
}
catch(IOException exception)
{
JOptionPane.showMessageDialog(this,exeep-
tion);
}
fileList=new JList(model);
contentPane.add(new JScrollPane(fileList),
BorderLayout.CENTER);
contentPane.add(new JLabel("從列表中拖曳出文
件"),
BorderLayout.NoRTH);
DragSource dragSource=DragSource.getDefauh-
DragSource();
dragSource.createDefaultDragGestureRecognizer
(fileList,
DnDConstants. ACTION_COPY_0R_
MOVE,new
DragGestureListener()
{
public void dragGestureRecognized(
DragGestureEvent event)
{
draggedValues=fileList.getSelectedValues();
Transferable transferable
=new FiteListTransferable(draggedValues);
evenr.startDrag(null,transferable,
new FileListDragSourceListener());
}
});
}
private class FileListDragSourceListener imple-
ments DragSourceAdapter
{
public void dragDropEnd(DragSourceDropEvent e-
vent)
{
if(event.getDropSuccess())
{
int action=event.getDropAction();
if(action= =DnDConstants.ACTl0N MOVE)
{
for(int i=0;i model.removeElement(draggedValues[i]);
}
}
}
}
private JList fileList;
private DefauhListModel model;
private Object[]draggedValues;
private static final int WIDTH=300;
private static final int HEIGHT=200;
}
class FileListTransferable implements Transferable
{
public FileListTransferable(Object[]files)
{
fileList=new ArrayList(Arrays.asList(files));
}
public DataFlavor[]getTransferDataFlavors()
{
return flavors;
public boolean isDataFlavorSupported(DataFlavor
flavor)
{
return Arrays. asList(flavors), contains(flavor) ;
}
public Object getTransferData(DataFlavor flavor)
throws UnsupportedFlavorException
if(flavor, equals(DataFlavor, javaFileListFlavor) )
return fileList;
else if(flavor, equals(DataFlavor, stringFlavor))
return fileList, toString() ;
else
throw new UnsupportedFlavorException(flavor) ;
}
private static DataFlavor[] flavors =
{
DataFlavor. j avaFileListFlavor,
DataFlavor. stringFlavor
};
private java. util. List fileList;
【全國(guó)計(jì)算機(jī)二級(jí)考試Java模擬試題二】相關(guān)文章:
計(jì)算機(jī)二級(jí)JAVA考試精選模擬試題12-02
計(jì)算機(jī)二級(jí)考試JAVA模擬試題03-03
2015年全國(guó)計(jì)算機(jī)二級(jí)考試Java模擬試題(三)03-30
全國(guó)計(jì)算機(jī)二級(jí)考試Java模擬試題答案及解析03-30
計(jì)算機(jī)二級(jí)考試Java模擬試題及答案201712-06
2015全國(guó)計(jì)算機(jī)二級(jí)考試JAVA模擬練習(xí)(三)03-05
計(jì)算機(jī)二級(jí)考試《Java》試題及答案03-30