完整版开发人员笔试题库.docx

上传人:b****3 文档编号:3703729 上传时间:2022-11-24 格式:DOCX 页数:24 大小:33.26KB
下载 相关 举报
完整版开发人员笔试题库.docx_第1页
第1页 / 共24页
完整版开发人员笔试题库.docx_第2页
第2页 / 共24页
完整版开发人员笔试题库.docx_第3页
第3页 / 共24页
完整版开发人员笔试题库.docx_第4页
第4页 / 共24页
完整版开发人员笔试题库.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

完整版开发人员笔试题库.docx

《完整版开发人员笔试题库.docx》由会员分享,可在线阅读,更多相关《完整版开发人员笔试题库.docx(24页珍藏版)》请在冰豆网上搜索。

完整版开发人员笔试题库.docx

完整版开发人员笔试题库

1.在软件开发过程中,软件结构设计是描述_______。

A)数据存储结构    B)软件体系结构   C)软件结构测试   D)软件控制过程

答案:

B

评析:

从工程管理角度来看,软件设计分两步完成:

概要设计和详细设计。

概要设计(又称结构设计)将软件需求转化为软件体系结构、确定系统级接口、全局数据结构或数据库模式。

 

2.数据库技术的主要特点为数据的集成性、数据的高共享性和低冗余性、数据独立性和数据统一管理与控制。

 

3.软件测试类型按开发阶段划分是______B_。

 

A.需求测试、单元测试、集成测试、验证测试 

 B.单元测试、集成测试、确认测试、系统测试、验收测试

 C.单元测试、集成测试、验证测试、确认测试、验收测试 

 D.调试、单元测试、集成测试、用户测试 

4.对于业务流清晰的系统可以利用___D__贯穿整个测试用例设计过程广在用例中综合使用各种测试方法,对于参数配置类的软件,要用____C_选择较少的组合方式达到最佳效果。

A.等价类划分B.因果图法C.正交试验法 D.场景法

A.等价类划分B.因果图法C.正交试验法 D.场景法

5.超出项目经理控制的成本增加因素,除了存款利率、贷款利息和税率外,还包括()D。

A.项目日常开支的速度和生产率B.项目日常开支的速度和工期拖延

C.项目补贴和加班D.原材料成本和运输成本

6.在深度为5的满二叉树中,叶子结点的个数为________。

A)32   B)31   C)16    D)15

答案:

C

评析:

所谓满二叉树是指除最后一层外,每层上的所有结点都有两个子结点。

也就是说,在满二叉树中,每一层上的结点数都达到最大值,即在满二叉树的第K层上有2K-1个结点,且深度为m的满二叉树有2m个结点。

7.已知二叉树BT的后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是_______。

A)cedba         B)acbed      C)decab     D)deabc

答案:

A

评析:

二叉树BT的后序遍历序列为dabec,故BT的根结点为c;而BT的中序遍历序列是debac,即遍历序列中最后一个结点为跟结点,说明BT的右子树为空。

由BT的的后序遍历序列和中序遍历序列可知BT的左子树(LST)的后序遍历序列和中序遍历序列分别为dabe和deba(树是递归定义的):

故LST的根结点是e,在由LST的中序遍历序列可知其左子树为d。

因此BT的前序遍历序列为cedba。

8.下面程序的输出结果为______ 。

#include

main()

{

charpl[7]=”abc”,p2[]=”ABC”,str[50]=“xyz”;

strcpy(str,strcat(pl,p2));

printf(“%s”,str);

}

A)xyzabcABC   B)abcABC            C)xyzabc           D)xyzABC

答案:

B

评析:

strcpy(strl,s1):

作用是将字符串s1拷贝到字符数组strl中去。

strcat(字符数组1,字符数组2):

把。

字符串2接到字符串l的后面,结果放在字符数组1中,函数调用后返回字符数组l的地址。

本题定义了三个字符数组pl,p2,str,strcat(p1,p2)函数的作用是将字符串数组p2接到字符串p1的后面,结果放在字符数组p1,再通过sffcpy()函数将该字符串拷贝到str数组中,原str数组中的字符串xyz被覆盖,因此打印输出字符串str即可得到abcABC。

9.在说明语句:

int*f();中,标识符f代表的是______。

A)一个用于指向整型数据的指针变量   B)一个用于指向一维数组的行指针

C)一个用于指向函数的指针变量       D)一个返回值为指针型的函数名

答案:

D

评析:

带回指针值的函数,其一般定义形式为:

类型标识符 *函数名(参数表);

例如:

int*f(x,y);

其中,f是函数名,调用它以后能得到一个指向整型数据的指针(地址),x,y是函数f的形参。

在f的两侧分别为。

运算符和()运算符,而()优先级高于s,因此f先与()结合,显然是函数形式。

这个函数前面有一个。

,表示此函数是指针型函数(函数值是指针)。

前面的int表示返回的指针指向整型变量。

10.以下程序的输出结果是______。

main()

{ charst[20]=“hello\0\t\\”;

printf(“%d%d\n”,strlen(st),sizeof(st));

}

A)99            B)520             C)1320             D)2020

答案:

B

评析:

c语言中字符串是以‘\0’字符结束的,且strlen()函数计算的是‘\0’字符前的所有字符的个数。

本题中strlen(st)应为5。

数组定义以后系统就为其分配相应大小的内存空间,而不论其中有没有内容。

sizeof()函数是计算变量或数组的所分配到的内存空间的大小。

所以本题的sizeof(st)为20。

11.下面程序运行后的输出结果是______。

intd=1;

fun(intp)

{

staticintd=5;

d+=p;

printf(“%d”,d);

returnd;

}

main()

{

inta=3;

printf(“%d\n”,fun(a+fun(d)));

}

A)699        B)669            C)61515          D)6615

答案:

C

评析:

静态局部变量在编译时赋初值,即只赋初值一次,在程序运行时它已有初值。

以后每次调用时不再重新赋初值而只是保留上次函数调用结束时的值,而对自动变量赋初值,不是在编译时进行的,而在函数调用时进行,每调用一次函数重新给一次初值,相当于执行一次赋值语句。

本题在程序开头定义了全局变量d并赋初值1,在被调函数fun()中,定义了静态局部变量d,初值为5。

在第一次调用函数fun时,d初值为5,p由主函数传递过来的值为1,则d=d+p=5+l=6,由于d是静态局部变量,在函数调用结束后,它仍保留d=6。

再次调用fun函数,d的初值为6,而由主函数传递的p的值为9,则此时d=d+p=6+9=15,最后打印输出d的值并返回主函数。

12.以下程序的输出结果是______。

#define M(x,y,z)x*y+z

main()

inta=1,b=2,c=3;

printf(”%d\n”,M(a+b,b+c,c+a));

}

A)19          B)17                C)15               D)12

答案:

D

评析:

c语言的宏定义包括不带参数的宏定义与带参数的宏定义。

本题为带参数的宏定义,其形式为:

#define宏名(形参表) 字符串,本题的M(a+b,b+c,c+a)被字符串a+b*b+c+c+a代替。

13.若进栈序列为1,2,3,4,进栈过程中可以出栈,则下列不可能的一个出栈序列是_______。

A)1,4,3,2   B)2,3,4,1

C)3,1,4,2   D)3,4,2,1

答案:

C

评析:

栈是一种后进先出表,选项c中,先出栈的是3,说明此时栈内必然有1,2,由于1先于2进栈,所以1不可能在2之前出栈,故选项C这种出栈序列是不可能的。

14.下列模式中,________是用户模式。

A)内模式 B)外模式   C)概念模式   D)逻辑模式

15.下面程序的功能:

输出100以内能被3整除且个位数为6的所有整数,请补充完整。

main().

inti,j;

for(i=0; 【12】;i++)

{

j=i*10+6;

if( 【13】 )continue;

printf(“%d”,j);

}

}

答案:

【12】i<10

【13】j%3!

=0

评析:

本题要求输出100以内能被3整除且个位数为6的所有整数,程序中j=i*10+6;语句是求个位数为6的整数,由此可得出程序的循环次数为i

然后通过if语句判断整数是否能被3整除,若不能则继续下一次循环,若能则输出该整数,所以逻辑表达式为i%31=00

 

16.设有关系R(A,B,C,D)及其上的函数相关性集合F={B→A,BC→D},那么关系R最高是?

()

A.第一范式的B.第二范式的

C.第三范式的D.BCNF范式的

17.设有关系模式EMP(职工号,姓名,年龄,技能)。

假设职工号唯一,每个职工有多项技能,则EMP表的主键是?

()

A.职工号B.姓名,技能

C.技能D.职工号,技能

18.数据库中的封锁机制是______的主要方法。

()

A.完整性B.并发控制

C.安全性D.恢复

19.Java类可以作为?

()

A、类型定义机制B、数据封装机制

C、类型定义机制和数据封装机制D、上述都不对

20.在调用方法时,若要使方法改变实参的值,可以?

()

A、用基本数据类型作为参数B、用对象作为参数

C、A和B都对D、A和B都不对

21.编译运行以下程序后,关于输出结果的说明正确的是?

()

publicclassConditional{

publicstaticvoidmain(Stringargs[]){

intx=4;

System.out.println(“valueis“+((x>4)?

99.9:

9));

}

}

A、输出结果为:

valueis99.9B、输出结果为:

valueis9

C、输出结果为:

valueis9.0D、编译错误

22.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?

()

A、ArrayListmyList=newObject();B、ListmyList=newArrayList();

C、ArrayListmyList=newList();D、ListmyList=newList();

23.下面说法不正确的是?

()

A、一个子类的对象可以接收父类对象能接收的消息;

B、当子类对象和父类对象能接收同样的消息时,它们针对消息产生的行为可能不同;

C、父类比它的子类的方法更多;

D、子类在构造函数中可以使用super()来调用父类的构造函数;

24.我们一般使用支持或协议的工具连接远程LINUX系统服务器,将位于LINUX系统服务器的文件传输到本地或向服务器传输文件一般使用协议。

25.LINUX系统中文件复制命令是,移动命令是,连接命令是,比较命令是。

26.假定学生Students和教师Teachers关系模式如下所示:

  Students(学号,姓名,性别,类别,身份证号)

  Teachers(教师号,姓名,性别,身份证号,工资)

  a.查询在读研究生教师的平均工资、最高与最低工资之间差值的SQL语句如下:

  SELECT______

  FROM Students,Teachers

  WHERE______;

  b.查询既是研究生,又是女性,且工资大于等于3500元的教师的身份证号和姓名的SQL语句如下:

  (SELECT身份证号,姓名

  FROM Students

  WHERE______)

  ______

  (SELECT身份证号,姓名

  FROMTeachers

  WHERE______);

(1)A.AVG(工资)AS平均工资,MAX(工资)-MIN(工资)AS差值

  B.平均工资ASAVG(工资),差值ASMAX(工资)-MIN(工资)

  C.AVG(工资)ANY平均工资,MAX(工资)-MIN(工资)ANY差值

  D.平均工资ANYAVG(工资),差值ANYMAX(工资)-MIN(工资)

(2)A.Students.身份证号=Teachers.身份证号

  B.Students.类别='研究生'

  C.Students.身份证号=Teachers.身份证号ANDStudents.类别='研究生'

  D.Students.身份证号=Teachers.身份证号ORStudents.类别='研究生'

(3)A.工资>=3500  B.工资>='3500'

  C.性别=女AND类别=研究生  D.性别='女'AND类别='研究生'

(4)A.EXCEPT  B.INTERSECT  C.UNIOND.UNIONALL

(5)A.工资>=3500  B.工资>='3500'

  C.性别=女AND类别=研究生  D.性别='女'AND类别='研究生'

27.下面程序的运行结果是什么?

classHelloA{

publicHelloA(){

System.out.println("HelloA");

}

{System.out.print("I'mAclass");}

static{System.out.print("staticA");}

}

publicclassHelloBextendsHelloA{

publicHelloB(){

System.out.println("HelloB");

}

{System.out.print("I'mBclass");}

static{System.out.println("staticB");}

publicstaticvoidmain(String[]args){

    newHelloB();

  }

}

答:

staticA

staticB

I'mAclass

HelloA

I'mBclass

HelloB

28 下列说法正确的有()

A.class中的constructor不可省略

B.constructor必须与class同名,但方法不能与class同名

C.constructor在一个对象被new时执行

D.一个class只能定义一个constructor

答案:

解析:

这里可能会有误区,其实普通的类方法是可以和类名同名的,和构造方法唯一的区分就是,构造方法没有返回值。

29.关于被私有访问控制符private修饰的成员变量,以下说法正确的是?

(C)

A、可以被三种类所引用:

该类自身、与它在同一个包中的其他类、在其他包中的该类的子类

B、可以被两种类访问和引用:

该类本身、该类的所有子类

C、只能被该类自身所访问和修改

D、只能被同一个包中的类访问

30.下面说法不正确的是?

(C)

A、一个子类的对象可以接收父类对象能接收的消息;

B、当子类对象和父类对象能接收同样的消息时,它们针对消息产生的行为可能不同;

C、父类比它的子类的方法更多;

D、子类在构造函数中可以使用super()来调用父类的构造函数;

31.若在某一个类定义中定义有如下的方法:

abstractvoidperformDial();该方法属于?

(C)

A、接口方法B、最终方法C、抽象方法D、空方法

32.以下声明合法的是?

(D)

A、defaultStrings;B、publicfinalstaticnativeintw()

C、abstractdoubled;D、abstractfinaldoublehyperbolicCosine()

33.简述常用的软件开发文档(标红的为必须)

1可行性研究报告

2项目开发计划

3需求

4需求分析

5概要设计

6详细设计

7数据库设计

8用户手册

9操作手册

10测试计划

11项目开发总结

34.用C语言编写一个1+2+3+….100的简单程序

#include 

int main()

{

    int i,sum=0;

    for(i=1;i<=100;i++)

        sum+=i;

    printf("%d\n",sum);

    return 0; 

}

/*

输出:

5050 

*/

35.简单介绍你认为如何做好软件项目管理

36.下列关于修饰符混用的说法,错误的是():

A.abstract不能与final并列修饰同一个类

B.abstract类中可以有private的成员

C.abstract方法必须在abstract类中

D.static方法中能处理非static的属性

解答D静态方法中不能引用非静态的成员

37.Whichtwocreateaninstanceofanarray?

(ChooseTwo)

A.int[]ia=newint[15];

B.floatfa=newfloat[20];

C.char[]ca=“SomeString”;

D.Objectoa=newfloat[20];

E.Intia[][]=(4,5,6)(1,2,3)

解答:

AD

任何类的父类都是Object,数组也数据引用类型,Objectoa=newfloat[20];这种写法相当于父类的用指向之类的实例。

38.关于java.lang.String类,以下描述正确的一项是()

A.String类是final类故不可以继承;

B.String类是final类故可以继承;

C.String类不是final类故不可以继承;

D.String类不是final类故可以继承;解答:

A

String类是final的,在java中final修饰类的不能被继承

39.关于sleep()和wait(),以下描述错误的一项是()

A.sleep是线程类(Thread)的方法,wait是Object类的方法;

B.sleep不释放对象锁,wait放弃对象锁;

C.sleep暂停线程、但监控状态仍然保持,结束后会自动恢复;

D.wait后进入等待锁定池,只有针对此对象发出notify方法后获得对象锁进入运行状态。

解答:

D

sleep是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。

调用sleep不会释放对象锁。

wait是Object类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出notify方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。

40.已知表达式intm[]={,1,2,3,4,5,6};

下面哪个表达式的值与数组下标量总数相等?

()

A.m.length()

B.m.length

C.m.length()+1

D.m.length+1

解答:

B

解答:

数组下标是从零开始的,但是数据下标的总量和数据长度相同。

41.方法resume()负责恢复哪些线程的执行()

A通过调用stop()方法而停止的线程。

B通过调用sleep()方法而停止的线程。

C通过调用wait()方法而停止的线程。

D通过调用suspend()方法而停止的线程。

解答:

D

Suspend可以挂起一个线程,就是把这个线程暂停了,它占着资源,但不运行,用Resume是恢复挂起的线程,

让这个线程继续执行下去。

42.要从文件"file.dat"中读出第10个字节到变量c中,下列哪个方法适合?

(D)

A、FileInputStreamin=newFileInputStream("file.dat");in.skip(9);intc=in.read();

B、FileInputStreamin=newFileInputStream("file.dat");in.skip(10);intc=in.read();

C、FileInputStreamin=newFileInputStream("file.dat");intc=in.read();

D、RandomAccessFilein=newRandomAccessFile("file.dat");in.skip(9);intc=in.readByte();

43.关于运算符>>和>>>描述正确的是

A.>>执行移动

B.>>执行翻转

C.>>执行有符号左移,>>>执行无符号左移

D.>>执行无符号左移,>>>执行有符号左移

解答:

C

44.一个线程在任何时刻都处于某种线程状态(threadstate),例如运行状态、阻塞状态、就绪状态等。

一个线程可以由选项中的哪种线程状态直接到达运行状态?

(D)

A、死亡状态B、阻塞状态(对象lock池内)C、阻塞状态(对象wait池内)D、就绪状态

45.设有关系R(A,B,C,D)及其上的函数相关性集合F={B→A,BC→D},那么关系R最高是?

(A)

A.第一范式的B.第二范式的

C.第三范式的D.BCNF范式的

46.在数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它是在数据库设计的_____阶段。

(B)

A.需求分析B.概念设计

C.逻辑设计D.物理设计

47.下列描述中,哪些符合Java语言的特征

A.支持跨平台(Windows,Linux,Unix等)

B.GC(自动垃圾回收),提高了代码安全性

C.支持类C的指针运算操作

D.不支持与其它语言书写的程序进行通讯

解答:

AB

48.MAX_LENGTH是int型public成员变量,变量值保持为常量1,用简短语句定义这个变量。

A.publicintMAX_LENGTH=1;

B.finalintMAX_LENGTH=1;

C.finalpublicintMAX_LENGTH=1;

D.publicfinalintMAX_LENGTH=1.

解答:

D通过题的描述就是定义常量,在java中常量命名规范是所有字母都大写用下划线分割每个单词

49.已知表达式intm[]={0,1,2,3,4,5,6};

下面哪个表达式的值与数组下标量总数相等?

()

A、m.lengt

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1