点击进入>>最新版全国计算机等级考试真题题库全套资料
一、基本操作题
本题的功能是求1~100的自然数的累加,并打印输出
计算结果。
publicclassjaval{
publicstaticvoidmain(String[]args){
intsum=0;
inti=1;
for(;;){
if(){
sum=sum+i:
}else
’
;
}
System.OUt.println("sums="+sum);
}
}
点击进入>>全国计算机等级考试真题题库全套最新考试资料
二、简单应用题
本题主窗口中包括一个文本框和一个文本域,在上面的文本框中输入一个整数并按回车键,就会在下面的文本域中显示该整数的平方值;如果在文本框中输入的不是一个整数,将弹出一个警告窗口。
tmportjava.awt.event.*:
importjava.awt.*;
importjavax.swing.JOptionPane;
classDwindowextendsFrameimplementsActionLis-
tener
{TextFieldinputNumber;
TextAreashow;
Dwindow(Strings)
{super(s):
inputNumber=newTextField(22);
inputNumber.addActionListener(this);
show=newTextArea();
add(inputNumber,BorderLayout.NORTH);
add(show,BorderLayout.CENTER);
setBounds(60,60,300,300);setVisible(true);
validate();
addWindowListener(newWindowAdapter()
{publicvoidwindowClosing(WindowEvente)
{System.exit(0);
}
});
}
publicvoidactionPerformed(ActionEvente)
{booleanboo=false;
if(e.getSource()==inputNumber)
{Strings=;
chara[]=S.toCharArray();
for(inti=0;i {if(!(Character.isDigit(a[i])))
boo=true;
}
if(boo==true)
{JOptionPane.showMessageDialog(this,"您输入
了非法字符","警告对话框",
);
inputNumber.setText(null);
}
elseif(boo==false)
{intnumber=Integer.parseInt(s);
show.append("\n"+number+"平方:"+(num-
bet*number)):
}
}
}
}
publicclassjava2
{publicstaticvoidmain(Stringargs[])
{newDwindow("java2");
}
}
三、综合应用题
本题的功能是在文本域面板中添加一个带有行数的面板。窗口中有一个文本域,在文本域的
左侧有一个带有数字的面板,该面板上的数字指示着文本域中的行数。
importjavax.swing.*;
importjavax.swing.event.*;
importjava.awt.*;
publicclassjava3extendsJFrame
{
publicstaticJTextPanetextPane;
publicstaticJScrollPanescrollPane;
JPanelpanel;
publicjava3()
{
super("java3()");
panel=newJPanel();
panel.setLayout(newBorderLayout());
panel.setBorder(BorderFactory.createEmptyBor-
der(20,20,20,20));
textPane=newJTextPane();
textPane.setFont(newFont("monospaeed",
Font.PLAIN,12));
scrollPane=newJScrollPane(textPane);
panel.add(scrollPane);
scrollPane.setPreferredsize(newDimension(300,
250));
setContentPane(panel);
setCloseOperation(JFrame.EXIT_ON_CLOSE);
LineNumberlineNumber=newLineNumber();
scrollPane.setRowHeaderView(lineNumber);
}
publicstaticvoidmain(String[]args)
{
java3ttp=newjava3();
ttp.pack();
ttp.setVisible(true);
}
}
classLineNumberextendsJTextPane
{
privatefinalstaticColorDEFAULT_BACK-
GROUND=Color.gray;
privatefinalstaticColorDEFAULT_FORE-
GROUND=Color.black;
privatefinalstaticFontDEFAUl。T—FONT=new
Font("monospaced",Font.PLAIN,12);
privatefinalstaticintHEIGHT=Integer.MAX_
VALUE-1000000;
privatefinalstaticintMARGIN=5;
privateFontMetricsfontMetrics;
privateintlineHeight;
privateintcurrentRowWidth;
privateJComponentcomponent;
privateintcomponentFontHeight;
privateintcomponentFontAscent;
publicLineNumber(JComponentcomponent)
{
if(component==null)
{
setBackground(DEFAULT_BACKGROUND);
setForegroun"DEFAULT_FOREGROUND);
setFont(DEFAULTFONT);
this.component=this;
}
else
{
setBaekground(DEFAULT_BACKGROUND);
setForeground(component.getForeground());
setFont(component.getFont());
this.component=component;
}
componentFontHeight=component.getFontMet-
rics(component.getFont()).getHeight();
componentFontAscent=component.getFontMet-
ries(component.getFont()).getAscent();
setPreferredWidth(9999);
}
publicvoidsetPreferredWidth(introw)
{
intwidth=fontMetrics.stringWidth(String.val-
ueOf(row));
if(currentRowWidth {
currentRowWidth=width;
setPreferredSize(newDfimension(2*MARGIN
+width,HEIGHT));
}
}
publicvoidsetFont(Fontfont)
{
super.setFont(font);
fontMetrics=getFontMetrics(getFont());
}
publicintgetLineHeight()
{
if(hneHeight==0)
returncomponentFontHeight;
else
returnlineHeight;
}
publicvoidsetLineHeight(intlineHeight)
{
if(hneHeight>0)
this.lineHeight=lineHeight;
}
publicintgetStartOffset()
{
returncomponent.getlnsets().top+component-
FontAscent;
}
publicvoidpaintComponent(Graphicsg)
{
intlineHeight=getLineHeight();
intstartOffset=getStartOffset();
RectangledrawHere=g.getClipBounds();
g.setColor(getBackground());
g.fillRect(drawHere.x,drawHere.Y,drawHere.
width,drawHere.height);
g.setColor(getForeground());
intstartLineNumber=(drawHere.y/line-
Height)+1;
intendLineNUmber=startLineNumber+
(drawHere.height/lineHeight);
intstart=(drawHere.Y/hneHeight)*line-
Height+startOffset;
for(inti=startLineNumber;i<=endLineN-
umber;i++)
{
StringlineNumber=String.valueOf(i);
intwidth=fontMetrics.stringWidth(lineNumber
);
g.drawstring(lineNumber,MARGIN+current-
RowWidth-width,start);
start+=lineHeight:
}
setPreferredWidth(endLineNumber);
}
}
上机考试试题答案与解析
一、基本操作题
第1处:i<=100
第2处:break
第3处:i++或i=i+1或i+=1
【解析】for(;;){}可以构成无限循环,所以第l处和第2处分别为跳出循环的条件和跳出循环;第3处为循环条件的自加操作。
二、简单应用题
第1处:inputNumber.getText()
第2处:JOptionPane.WARNING_MESSAGE
【解析】第1处读取用户在文本框的输入内容;第2处设定对话框类型为警告对话框。
三、综合应用题
第1处:scrollpane.setPreferredSize(newDimension(300,250))
第2处:setDefauhCloseOperation(JFrame.EXIT_ON_CLOSE)
第3处:LineNumberLineNumber=newLineNumber(textPane)
【解析】第1处Java是大小写敏感的;第2处设置窗口关闭方式应使用setDefauhCloseOperation()方法;第3处从下面的publicLineNumber(JComponentcomponent)可以看出LineNumber()需要JComDonent型参数。
下载仅供下载体验和测试学习,不得商用和正当使用。
下载体验