一、基本操作题
本题的功能是计算l~10之间除了5以外的各个自然数的和。
publicclassjaval{
publicstaticvoidmain(String[]args){
inti=1;
intsum=0;
while(i<=10){
if(i==5){
;
;
}
;
i++;
}
System.out.println("sum="+sum);
}
}
点击进入>>全国计算机等级考试真题题库全套最新考试资料
二、简单应用题
本题的功能是监听键盘敲击事件,并将敲击的字符显示在标签上。开始,文字标签提示“Pleasepressyourkeyboard!”,当按下键盘上的字符键,文字标签就变为“’*’ispressed!”(*为所按字母)。
importjava.awt.*;
importjava.awt.event*’;
importjavax.swing.*;
publicclassjava2extendsFrame{
Dublicstaticvoidmain(Stringargs[]){
java2f=newjava2("java2");
Panelpan=newPanel();
f.init();
}
publicjava2(Stringstr){
super(str);
}
publicvoidinit(){
addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){
System.exit(0);
}
});
setSize(200,200);
setLayout(newFlowLayout());
lab=newLabel("Pleasepressyourkeyboard!");
add(lab);
addKeyListener(this);
setVisible(true);
}
publicvoidkeyTyped(KeyEVente){
lab.setText("\’"++"\’ispressed!");
repaint();
}
publicvoidkeyPressed(KeyEVente){
)
publicvoidkeyReleased(KeyEvente){
}
privateLabellab;
}
三、综合应用题
本题的功能是求两个交叉图形的并、减、交和异或。窗口中有4个单选按钮和一个图形面板,面板中有两个交叉的图形,选中其中一个单选按钮,图形面板中以黑色填充的方式显示运算结果。
importjava.awt.*;
importjava.awt.event*+;
importjava.awt.geom.*;
importjava.util.*;
importjavax.swing.*;
publicclassjava3
{
publicstaticvoidmain(String[]args)
{
JFrameframe=newAreaTestFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_
ON_CLOSE);
frame.show();
}
}
classAreaTestFrameextendsJFrame
{
publicAreaTestFrame()
{
setTitle("java3");
setSize(WIDTH,HEIGHT);
areal
=newArea(newEllipse2D.Double(100,100,
150,100));
area2
=newArea(newRectangle2D.Double(150,150,
150,100));
ContainerconfentPane=getContentpane();
panel=new
JPanel()
{
publicvoidpaintComponent(Graphicsg)
{
super.paintComponent(g);
Graphics2Dg2=(Graphics2D)g;
g2.draw(areal);
g2.draw(area2);
if(area!=null)g2.fill(area);
}
};
contentPane.add(panel,BorderLayout.CEN-
TER);
JPanelbuttonPanel=newJPanel();
ButtonGroupgroup=newButtonGroup();
JRadioButtonaddButton=newJRadioButton("
并",false);
buttonPanel.add(addButton);
group.add(addButton);
addButton.addActionListener(new
ActionListener()
{
publicvoidactionPerformed(ActionEventevent)
{
area=newArea();
area.add(areal);
area.add(area2);
panel.repaint();
}
});
JRadioButtonsubtractButton
=newJRadioButton("减",false);
buttonPanel.add(subtractButton);
group.add(subtractButton);
subtractButton.addActionListener(new
ActionListener()
{
publicvoidactionPerformed(ActionEventevent)
{
area=newArea();
area.add(areal);
area.subTract(area2);
panel.repaint();
}
});
JRadioButtonintersectButton
=newJRadioButton("交",false);
buttonPanel.add(intersectButton);
group.add(intersectButton);
intersectButton.addActionListener(new
ActionListener()
{
publicvoidactionPerformed(ActionEventevent)
{
area=newArea():
area.add(areal);
area.intersect(area2);
panel.repaint();
}
});
JRadioButtonexclusiveCIrButton
=newJRadioButton(“异或”,false);
buttonPanel.add(exelusiveOrButton);
group.add(exclusiveOrButton);
exclusiveOrButton.addActionListener(new
ActionListener()
{
publicvoidactionPerformed(ActionEventevent)
{
area=newArea();
area.add(areal);
area.exclusiveor(area2);
panel.repaint();
}
});
contentPane.add(buttonPanel,BorderLayout.
NORTH);
}
privateJPanelpanel;
privateAreaarea;
privateAreaareal;
privateAreaarea2;
privatestaticfinalintWIDTH=400;
privatestaticfinalintHEIGHT=400;
}
上机考试试题答案与解析
一、基本操作题
第1处:i=i+1或i++或i+=1
第2处:continue
第3处:sum+=i或sum=sum+i
【解析】第1处while循环是累加1~10之间除了5的自然数之和,将i加1是为了跳过5;第2处当i等于5时就跳出本次循环;第3处累加1~10之间除了5的自然数的和将其最终赋给sum。
二、简单应用题
第1处:implementsKeyListener
第2处:e.getKeyChar()
【解析】第1处实现键盘监听接口;第2处键盘事件对象
e调用getKeyChar()方法获得用户按下的键盘键值。
三、综合应用题
第1处:ContainercontentPane=getContentPane()
第2处:area.subtract(area2)
第3处:area.exclusiveor(area2)
【解析】第1处用getContentPane()获得内容面板;第2处表示从area形状中减去area2形状;第3处将area设置为area形状和area2形状的组合,并减去相交部分。
下载仅供下载体验和测试学习,不得商用和正当使用。
下载体验