北京神舟航天软件笔试题

时间:2024-11-08 12:35:31 美云 笔试题目 我要投稿
  • 相关推荐

北京神舟航天软件笔试题

  在学习和工作的日常里,我们或多或少都会接触到试题,试题是命题者根据测试目标和测试事项编写出来的。相信很多朋友都需要一份能切实有效地帮助到自己的试题吧?以下是小编收集整理的北京神舟航天软件笔试题,希望能够帮助到大家。

北京神舟航天软件笔试题

  北京神舟航天软件笔试题 1

  基础篇(100分钟)(满分100分)

  (一) 不定项选择题(36分,每小题1.5分)

  基本语法测试

  1.给定如下代码

  class Test{

  private int m;

  public static void fun() {

  // some code...

  }

  }

  怎样修改才能使变量m能够在方法fun()中直接使用

  A.改成protected int m

  B. 改成public int m

  C. 改成static int m

  D. 改成int m to int m

  2.下面的方法中那个是public void example(){...}的正确的重载函数(JDK1.4)

  A. public void example( int m){...}

  B. public int example(){...}

  C. public void example2(){...}

  D. public int example ( int m, float f){...}

  3.给出如下定义

  String s = "story";

  下面的表达式中那个是正确的?

  A. s += "books";

  B. char c = s[1];

  C. int len = s.length;//没有()

  D. String t = s.toLowerCase();

  4.给定如下代码段:

  boolean m = false;

  if ( m = false )

  System.out.println("False");

  else

  System.out.println("True");

  其运行结果是什么?

  A. False

  B. True

  C. None

  D. 有错误,无法编译通过.

  5. 所给代码如下:

  1) class Example{

  2) String str;

  3) public Example(){

  4) str= "example";

  5) }

  6) public Example(String s){

  7) str=s;

  8) }

  9) }

  10) class Demo extends Example{

  11) }

  12) public class Test{

  13) public void f () {

  14) Example ex = new Example("Good");

  15) Demo d = new Demo("Good");

  16) }

  17) }

  该代码会在那一行出错?

  A. line 3

  B. line 6

  C. line 10

  D. line 14

  E. line 15

  6. 下面那种描述是正确的?

  A. 在Java中不允许多重继承,这样可以使程序更加可靠

  B. 子类继承父类的所有方法 (包括构造方法)

  C. 一个类可以实现很多接口.

  D. 当一个类实现一个接口,那么他就必须定义该接口中的所有方法。

  7. 下面关于final、finally、finalize描述正确的是

  A. final可以被用来做常量的定义关键字

  B. finally可以被用作类限定词

  C. finalize可以被用来进行错误处理

  D. final可以被用来作为垃圾回收的回调函数

  E. final可以被用来作为一个抽象函数的限定词,如: public final abstract fun();

  8. 下面关于String描述正确的是:

  A. String str1=”aa”; String str2=”aa”; System.out.println((str1==str2)); 输出为true

  B. String str1=”aa”; String str2=”aa”; System.out.println(str1.equals(str2)); 输出为true

  C. String str1 = “aaaa” + “bbbbb” + “aaaa”; 会产生5个对象

  D. String aaa = “aaaaaa[dd”.replaceAll(“[“, “c”); aaa的值变为”aaaaaacdd”

  IO方面API测试

  9. 下面哪些Java中的流对象是字节流?

  A. FileInputStream B. BufferedInputStream

  C. PushbackInputStream D. ByteArrayInputStream

  10. 下面的类哪些可以处理Unicode字符?

  A. InputStreamReader

  B. BufferedReader

  C. Writer

  D. PipedInputStream

  Java异常处理

  11. 下面程序的输出结果是什么

  class TestException{

  public static void main( String[] args ){

  int i = 0;

  try {

  if (i == 0) {

  throw new IOException("IO Error");

  }

  } catch (IOException ioex) {

  System.out.print(ioex.getMessage());

  i++;

  } catch (Exception ex) {

  System.out.print("Exception Find") ;

  i += 2;

  } finally {

  i++;

  }

  try {

  if (i == 1) {

  throw new IOException("IO Error");

  }

  if (i == 2) {

  throw new Exception("Exception Find");

  } else {

  throw new Error( "Unknow Error" ) ;

  }

  } catch( IOException ex ){

  System.out.print(ex.getMessage());

  } catch (Exception ex) {

  System.out.print(ex.getMessage());

  } catch (Throwable tr){

  System.out.print(tr.getMessage());

  }

  }

  }

  A. IO ErrorIO Error

  B. IO ErrorUnknow Error

  C. IO ErrorException Find

  D. Exception FindIO Error

  E. Exception FindException Find

  Java多线程测试

  12. 如果一个线程调用了wait(), 那个方法可以让他继续运行?

  A. join()

  B. resume()

  C. notify()

  D. notifyAll()

  E. high priority thread is ready

  13. 下面那个方法被用来定义线程的执行体?

  A. start()

  B. init()

  C. run()

  D. main()

  E. synchronized()

  14. 下面那个关键字用于对线程进行互斥访问控制?

  A. native

  B. static

  C. synchronized

  D. abstract

  数据结构API

  15. 下面那个Java中的类可以用来保存数据时随机访问效率较高

  A. ArrayList B. Vector C.LinkList D.Stack

  16. 下面那个Java类中可以用来用来保存键值对

  A. HashSet B. HashMap C.LinkList D.Stack

  Swing开发测试

  17. 下面那个容器对象必须要添加到其他的容器对象中才能使用?

  A. Window

  B. Frame

  C. Dialog

  D. Panel

  18. 下面哪些类是Java中的布局管理器?

  A. CardLayout

  B. BorderLayout

  C. PanelLayout

  D. GridLayout

  E. BagLayout

  19. 将一个Button放置到一个Frame中,使这个Button的高随着Frame的改变而改变,但是宽度不随之改变,应该采用哪种布局方式?

  A. FlowLayout

  B. CardLayout

  C. North and South of BorderLayout

  D. East and West of BorderLayout

  E. GridLayout

  20. 下面哪些方法能够在类EventObject中得到事件源?

  A. getFrame() B. getID()

  C. getSource() D. getWindow()

  21. 下面那个关于事件探听器的描述是正确的?

  A. 一个组件可以注册多个事件探听器.

  B. 一个组件只能注册一个事件探听器.

  C. 一个探听器可以接收和处理来自多个组件的事件.

  D. 一个探听器只能接收和处理来自一个组件的'事件.

  22. 下面的类哪些不是Java中的容器类?

  A. ScrollPane

  B. JLabel

  C. Scrollbar

  D. Dialog

  网络通讯测试

  23. 下面的类中哪些被用来实现Tcp/Ip协议的客户端和服务器端程序?

  A. ServerSocket

  B. Server

  C. Socket

  D. DatagramPacket

  E. DatagramSocket

  24. 下面关于TCP和UDP的描述正确的是:

  A. TCP连接发送数据之前必须保证网络连接已经成功建立

  B. UDP连接发送数据之前必须保证网络连接已经成功建立

  C. ServerSocket类建立的是TCP连接

  D. DatagramSocket类建立的是UDP连接

  (二) 问答题(34分)

  数据库基础知识

  1、 分别写出数据库逻辑结构中各种不同对象的作用(表,视图,序列,存储过程,索引,主键,外键,约束,触发器)(10分)

  SQL问答题

  2、 根据要求写出Sql查询语句(10分)

  表结构:

  1、 表名:g_cardapply

  字段(字段名/类型/长度):

  g_applyno varchar 8;// 申请 单号(关键字)

  g_applydate bigint 8;//申请日期

  g_state varchar 2;//申请状态

  2、 表名:g_cardapplydetail

  字段(字段名/类型/长度):

  g_applyno varchar 8;//申请单号(关键字)

  g_name varchar 30;//申请人姓名

  g_idcard varchar 18;//申请人身份证号

  g_state varchar 2;//申请状态

  其中,两个表的关联字段为申请单号。

  题目:

  1、 查询身份证号码为440401430103082的申请日期

  Select applay. g_applydate

  From g_cardapply applay, g_cardapplydetail detail

  Where applay. g_applyno=detail. g_applyno

  And detail. g_idcard=’ 440401430103082’

  2、 将身份证号码为440401430103082的记录在两个表中的申请状态均改为07

  Update g_cardapply apply, g_cardapplydetail detail set applay.g_state=’07’, detail.g_state=’07’ Where applay. g_applyno=detail. g_applyno

  And detail. g_idcard=’ 440401430103082’

  3、 删除g_cardapplydetail表中所有姓李的记录

  Delete from g_cardapplydetail where g_name like ‘李%’

  Java API运用

  3、 请写出你所知道的Java API中所提供的数据结构模型(例如Vector),并指出各数据模型在存储结构上和使用上有什么不同。(7分)

  4、 指出JDBC中三种不同类型的Statement(Statement、PreparedStatement、CallableStatement)的用途分别是什么。(7分)

  (三) 读程序写结果(10分)

  写出下面程序的运行结果,下面程序有些可能根本无法通过编译,如果无法编译通过,请指出错误原因。

  1、写出下面程序的运行结果:(3分)

  public class Test {

  public static void changeStr(String str){

  str="welcome";

  }

  public static void main(String[] args) {

  String str="1234";

  changeStr(str);

  System.out.println(str);

  }

  }

  2、写出下面程序的运行结果(5分)

  class Foo{

  public static void main(String args[]){

  int x=4,j=0;

  switch(x){

  case 1:j++;

  case 2:j++;

  case 3:j++;

  case 4:j++;

  case 5:j++;

  default:j++;

  }

  System.out.println(j);

  }

  }

  (四) 代码查错(10分)

  1、指出下面程序的运行错误(4分)

  public class OutClass{

  private int varInOuterClass = 0;

  public OutClass(){

  }

  public void callOutter(){

  int varInOuterMethod = 0;

  class InnerClass{

  private int varInInnerClass = 0;

  public InnerClass(){

  }

  public void print(){

  System.out.println("varInOuterClass" + varInOuterClass);

  System.out.println("varInInnerClass" + varInInnerClass);

  System.out.println("varInInnerClass" + varInOuterMethod);

  }

  }

  InnerClass inner = new InnerClass();

  inner.print();

  }

  public static void main(String[] args){

  OutClass out = new OutClass();

  out.callOutter();

  }

  }

  2、指出下面程序的运行错误(3分)

  public class Something {

  public static void main(String[] args) {

  Something s = new Something();

  System.out.println("s.doSomething() returns " + doSomething());

  }

  public String doSomething() {

  return "Do something ...";

  }

  }

  (五) 编程题(10分)

  算法设计能力测试(10分)

  1、编写一个类,该类封装了一元二次方程共有的属性和功能,即该类有刻画方程系数的3个成员变量以及计算实根的方法。

  方程: 求根方法为 要求:该类的所有对象共享常数项。

  下面给出了您在程序中可能会使用到的功能类,及其部分接口的API文档,在程序中可以进行使用,

  参考答案

  (一)不定项选择

  1, C 2, A D 3, A D 4, B 5, E 6, A C D 7, A E 8, A B 9, A B C D

  10, A B C 11, C 12, C D 13, C 14, C 15, C 16, B 17, D, 18, A B D

  19, D, 20, C D 21,B C 22, B C 23, A C E 24, A C D

  (五)编程题

  public class Equation {

  public float a;

  public float b;

  public float c;

  public double[] d;

  public Equation(float a, float b, float c) {

  this.a = a;

  this.b = b;

  this.c = c;

  this.d = new double[2];

  }

  boolean getRealRoot() {

  float temp = b * b - 4 * a * c;

  if (temp < 0)

  return false;

  else {

  this.d[0] = (-b + Math.sqrt(temp)) / (2 * a);

  this.d[1] = (-b - Math.sqrt(temp)) / (2 * a);

  return true;

  }

  }

  public static void main(String[] arg) {

  Equation e1 = new Equation(1, 2, 1);

  if (e1.getRealRoot()) {

  System.out.print(e1.d[0]);

  System.out.print(";");

  System.out.println(e1.d[1]);

  } else {

  System.out.print("no real root");

  }

  }

  }

  北京神舟航天软件笔试题 2

  一、选择题

  数据结构

  A. 某种前序遍历为EAFCBD,LC(C的左指针)的存放地址为n+4

  B. 某种层次遍历为EFACDB,LC的内容为n+8

  C. 某种前序遍历为EABCFD,RA(A的右指针)的内容为n+16

  D. ……(其他选项,根据具体题目给出)

  一株查找二叉树,其结点A、B、C、D、E、F依次存放在一个起始地址为n(假定地址以字节为单位顺序编号)的连续区域中,每个节点占4个字节:前两个字节存放结点值,后两个字节依次放左指针、右指针。若该查找二叉树的根结点为E,则关于其遍历和指针存放地址的说法,下列哪项是正确的?

  软件测试

  A. alpha测试需要用用户代表参加

  B. alpha测试不需要用用户代表参加

  C. alpha测试是系统测试的一种

  D. alpha测试是验收测试的`一种(正确答案可能包括A和D,根据具体题目要求确定)

  下列关于alpha测试的描述中正确的是?

  编程语言

  A. 数组名代表数组的首地址,是常量

  B. 指针可以指向数组中的任何一个元素,并且指针可以加减整数来遍历数组

  C. 数组可以通过下标访问,也可以通过指针运算来访问

  D. 以上都是正确的

  在C语言中,以下哪项关于数组和指针的说法是正确的?

  二、填空题

  在UNIX操作系统中,查看系统进程使用的命令是__________。

  答案:ps –ef

  软件能力成熟度模型CMMI一共有__________个级别。

  答案:五

  黑盒测试的常用方法包括等价类划分、边界值、__________、功能图等。

  答案:因果图(或其他黑盒测试方法,如正交试验、场景法、错误推测法等)

【北京神舟航天软件笔试题】相关文章:

联想北京24号12点笔试题目分享08-24

软件测试 试题12-12

软件笔试题10-23

中兴2015笔试题08-22

360笔试题分享10-09

迅雷2011.10.21笔试题09-09

找工作之神舟笔试 开篇笔经分享10-22

软件类笔试题12-09

中兴软件笔试题10-07