全国计算机二级java上机练习题(共9页).doc
-
资源ID:13482569
资源大小:32KB
全文页数:9页
- 资源格式: DOC
下载积分:20金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
全国计算机二级java上机练习题(共9页).doc
精选优质文档-倾情为你奉上一、基本操作题(共1题,合计18分)41本题是判断一个字符串“Tom”是否在另外一个字符串 “I am Tom,I am from China”中出现。public class javalpublic static void main(Stringargs) ;strl="I am Tom,I am from China";str2="Tom";int i= ;if( )Systemoutprintln(""+str2+""is in thestring:""+strl+""");elseSystemoutprintln("""+str2+""is not in thestring:""+strl+""");正确答案第1处:String strl,str2第2处:strlindexOf(str2)第3处:i!=-1【解析】第1处使用前定义变量strl和str2;第2处和第3处判断str2是否是strl的子串。您的答案 int i = strl.indexOf("Tom"); if(i != -1)本题分值:18分您的得分:10分试题解析: 三、应用题(共1题,合计24分)42本题要求分行打印输出当前系统中所有字体的名称。 ;public class java2public static void main(Stringargs)StringfontNames=GraphicsEnvironmentgetLocalGraphicsEnvironment()getAvailable-FontFamilyNames();for(int i=0; ;i+)SystemOutprintln(fontNamesi);正确答案第1处:import javaawt*第2处:i<fontNames1ength【解析】第1处必须在所有类定义之前引入标准类;第2处遍历字体名称数组。您的答案i < fontNames.length;本题分值:24分您的得分:9分试题解析: 四、综合题(共1题,合计18分)43本题的功能是用键盘上的方向键来控制直线的绘制方向。如果一直按向上的方向键,则在窗口中从焦点开始向上缓慢绘制直线,按其他方向键也会向对应的方向缓慢地绘制直线,如果按下<Shift>键的话,绘制直线的速度会加快。import javaawt*;import javaawtgeom*;import javautil*;import javaawtevent*;import javaxswing*;public class java3public static void main(Stringargs)SketchFrame frame=new SketchFrame();framesetDefauhCloseOperation(JFrameEXIT_ON_CLOSE);frameshow();class SketchFrame extends JFramepublic SketchFrame()setTitle("java3");setSize(DEFAULT WIDTH, DEFAULTHEIGHT);SketehPanel panel=new SketchPanel();Container contentPane=getContentPane();contentPaneadd(panel);public static final int DEFAULT_WIDTH=300;public static final int DEFAULT_HEIGHT=200;class SketehPanel extends JPanelpublic void sketchPanel()last=new Point2DDouble(100,100);lines=new ArrayList();KeyHandler listener=new KeyHandler();addkeyListener(this);setFocusable(true);public void add(int dx,int dy)Point2D end=new Point2DDouble(lastgetX()+dx,lastgetY()+dy):Line2D line=new Line2DDouble(last,end);linesadd(line):repaint();last=end:public void paintComponent(Graphics g)superpaintComponent(g);Graphics2D g2=(Graphics2D)g;for(int i=0;i<linessize();i+)92draw(Line2D)linesget(i);private Point2D last:private ArrayList lines;private static final int SMALL_INCREMENT=1:private static final int LARGE_INCREMENT=5;private class KeyHandler implements KeyListenerpublic void keyPressed(KeyEvent event)KEY keyCode=eventgetKeyCode();int d;if(eventisShiftDown()d=LARGE_INCREMENT;elsed=SMALL_INCREMENT;if(keyCode= =KeyEventVK_LEFT)add(-d,0);else if(keyCode= =KeyEventVK_RIGHT)add(d,0);else if(keyCode= =KeyEventVK_UP)add(0,-d):else if(keyCode= =KeyEventVK_DOWN)add(0,d);public void keyReleased(KeyEvent event)public void keyTyped(KeyEvent event)char keyChar=eventgetKeyChar();int d;if(CharacterisUpperCase(keyChar)d=LARGE_INCREMENT;keyChar=CharactertoLowerCase(keyChar);elsed=SMALL_INCREMENT;正确答案第1处:pulic SketchPanel()第2处:addKeyListener(listener)第3处:int keyCode=eventgetKeyCode()【解析】第1处SketchPanel是构造方法,构造方法是给对象赋初值,所以没有返回值,但不用void来声明;第2处注册时间的监听器,参数应为事件源;第3处getKeyCode()方法获得的是int型的键码。您的答案本题分值:18分您的得分:0分试题解析: 一、应用题(共1题,合计24分)42下面的程序中,有两个文本框,Input和Output,用户在Input文本框中输入字符串后回车,字符串会在Output文本框中出现。 import javaawt*; import javaawtevent*; public class java2 extends Framepublic static void main(String args)java2 f=new java2("java2"); Panel pan=new Panel(); finit(); pubhc java2(String str)super(str); public void init()addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)Systemexit(O); ; setSize(200,200); setLayout(new FlowlLayout(); final TextField tfl=new TextField(20): final TextField tf2=new TextField(20); final Label hinew Label("Input:"); final Label la2一new Label("Output:"); tfladdActionListener( public void actionPerformed(ActionEvent e)tf2setTex( ); ); add(la1); add(tfl); add(la2); add(tf2); setVisible(true); 正确答案第1处:new ActionListener()第2处:tflgetText() 【解析】第1处是设置监听事件,响应tfl(Input文本框)的输入事件,第2处是将用户在Input文本框中输入的内容在Output文本框中显示。二、综合应用本题的功能是对图形进行操作,包括旋转、移位、放大和剪切。窗口中有4个单选按钮和一个图形面板,图形面板中有一个矩形和该矩形移位操作后的图形,任选其中一个单选按钮,则图形面板中将显示该操作后的图形。 import javaawt*; import javaawtevent*; import javaawtgeom*; import javautil*; import javaxswing*; public class java3public static void main(Stringargs)JFrame frame=new TransformTestFrame(); framesetDefaultCloseOperation(JFrameEXIT_0N_CLoSE); frameshow(); class TransformTest extends JFrame public TransformTestFrame()setTitle("java3"); setSize(WIDTH,HEIGHT); Container contentPane=getContentPane(); canvas=new TransformPanel(); contentPaneadd(canvas,BorderLayoutCEN-TER); JPanel buttonPanel=new JPanel(): ButtonGroup group=new ButtonGroup(); JRadioButton rotateButton=new JRadioButton("旋转",true); buttonPaneladd(rotateButton); groupadd(rotateButton); rotateButtonaddActionListener(newActionListener()public void actionPerformed(ActionEvent event)canvassetRotate(); ); JRadioButton trans|ateButton=new JRadioButton("移位",false); buttonPaneladd(translateButton); groupadd(translateButton); translateButtonaddActionListener(newActionLiatener()public void actionPerformed(ActionEvent event)canvassetTranslate(); ); JRadioButton scaleButton=new JRadioButton("放大",false); buttonPaneladd(scaleButton): groupadd(scaleButton); scaleButtonaddActionListener(newActionListener() public void actionPerformed(ActionEvent event)canvassetScale(); ); JRadioButton shearButton=new JRadioButton("剪切",false); buttonPaneladd(shearButton): groupadd(shearButton); shearButtonaddActionListener(newActionListener()public void actionPerformed(ActionEvent event)canvassetShear(); ); contentPaneadd(buttonPanel,BorderLayout NORTH): private TransformPanel canvas; private static final int WIDTH=300; private static final int HEIGHT=300; class TransformPanel extend JPanelpublic TransformPanel()square=new Rectangle2DDouble(-50,-50, 100,100); t = new AffineTransform(); setRotate(); public void paintComponent()superpaintComponent(g); Graphics2D g2=(Graphies2D)g; g2translate(getWidth()2,getHeight()2): g2setPaint(Colorgray); g2draw(square); g2transform(t); g2setPaint(Colorblack); g2draw(square); public void setRotate()tsetToRotation(MathtoRadians(30); repaint(); public void setTranslate()tsetToTranslation(20,1 5); repaint(); public void setScale()tsetToScale(20,15): repaint(); public void setShear()tsetToShear(-02,O); repaint(); private Rectangle2D square; private AffineTransform t; 正确答案第1处:class TransformTestFrame extends JFrame第2处:class TransformPanel extends JFrame第3处:public void paintComponent(Graphics g)【解析】第1处类中公有对象名称应与类名一致;第2处为继承的父类不正确;第3处从下面的superpaintComponent(g);可判断出应有参数Graphics g。专心-专注-专业