软件开发笔试题

合集下载

软件开发培训入学笔试题

软件开发培训入学笔试题

软件开发培训入学笔试题一、选择题(每题 3 分,共 30 分)1、以下哪种编程语言被广泛应用于 Web 开发?()A JavaB C++C PythonD Ruby2、在面向对象编程中,以下哪个概念描述了将对象的内部细节隐藏起来,只对外暴露必要的接口?()A 继承B 封装C 多态D 抽象3、以下哪种数据结构适合用于快速查找和插入操作?()A 链表B 栈C 队列D 二叉搜索树4、以下关于数据库事务的描述,错误的是()A 事务是一个不可分割的工作单元B 事务具有原子性、一致性、隔离性和持久性C 一个事务可以包含多个 SQL 语句D 事务一旦提交就无法回滚5、在软件开发过程中,以下哪个阶段主要确定软件的功能和性能要求?()A 设计阶段B 需求分析阶段C 编码阶段D 测试阶段6、以下哪种测试方法主要用于检查软件的功能是否符合预期?()A 性能测试B 功能测试C 压力测试D 安全测试7、以下关于软件版本控制的描述,正确的是()A 可以帮助团队成员协同开发B 只能用于管理代码文件C 对软件的维护没有帮助D 会增加软件开发的复杂度8、以下哪种软件开发模型强调风险分析和应对?()A 瀑布模型B 敏捷模型C 螺旋模型D 增量模型9、在操作系统中,进程和线程的区别在于()A 进程拥有独立的内存空间,线程共享进程的内存空间B 线程比进程的开销大C 进程可以并发执行,线程不能并发执行D 进程比线程的优先级高10、以下哪种算法的时间复杂度最低?()A O(n²)B O(n log n)C O(n)D O(1)二、填空题(每题 3 分,共 30 分)1、常见的软件开发方法有结构化方法、_____和面向对象方法。

2、软件测试的步骤通常包括单元测试、集成测试、_____和系统测试。

3、在 Java 中,实现多线程的方式有两种:继承_____类和实现Runnable 接口。

4、数据库中的主键用于唯一标识一条记录,并且其值_____。

Java软件开发工程师笔试题(答案)

Java软件开发工程师笔试题(答案)

Java软件开发工程师笔试题(答案)Java工程师笔试题1,填空(此大题10项,每空1分,共20分)1。

Java语言的三个特性是继承性、封装性和多态性2.在Java中,char 使用_ _ _ _ Unicode _ _ _ _ _ _编码方案,因此中文字符和英文字符都占用__2__字节的内存空间3。

当方法由_ _定义时,形参指的是参数行,当方法由_ _调用时,实际参数是传入的变量或值。

4。

JSP内置对象,应用程序对象代表应用程序上下文,它允许JSP 页面与包含在同一应用程序中的任何网络组件共享信息,而会话对象是特定于每个客户的5。

如果你想把一个对象写到一个流中,这个类必须实现Seralizable 接口6。

在程序中实现多线程有两种方法:继承线程类和实现_ _ Runable _ interface7。

在多线程中,线程的相对优先级可以通过调用相应的setPriority()方法来修改8。

面向对象编程的五个设计原则是单一责任、开放和封闭、里氏尺度替换、依赖倒置、接口分离。

通过Ajax,客户端获取的数据主要有两种类型:文本类型和xml 10。

Socket通常也叫socket,用来描述__ ip和_ _ interface2,多项选择题(这个大题20项,每项2分,共40分)1。

在JA V A中,如果父类中的一些方法不包含任何逻辑并且需要被子类重写,那么父类的这些方法应该使用()关键字来声明:a)final b)static c)abstract d)void2。

在JA V A中,已经定义了两个接口b和c。

要定义实现这两个接口的类,下面的语句是正确的()a)接口aextend b,c b)接口a implements b,c c)类a mplements b,c d)类a mplements b,实现c3。

可以在JA V A接口()中定义A)静态方法b)常量c)构造函数d)抽象方法4。

假设A有构造函数A (int a),那么在A类的其他构造函数中调用的构造函数和语句格式应该是()a)a(x)b)this . a(x)c)this(x)d)super(x)5。

软件开发工程师(JAVA)笔试题

软件开发工程师(JAVA)笔试题

软件开发工程师(JAVA)笔试题请在90分钟以内做答答案请写在答题纸上一、选择题1、下面哪项是不合法的标识符:()A. $personsB. TwoUsersC. *pointD. _endlineE. final2、下列运算符合法的是()A.&& B.<> C.if D.:=3、下面描述中哪两项相等:()[选择两项]A.<%= YoshiBean.size%>B.<%= YoshiBean.getSize()%>C.<%= YoshiBean.getProperty(“size”)%>D.<jsp:getProperty id=”YoshiBean” param=”size”/>E.<jsp:getProperty name=”YoshiBean” param=”size”/>F.<jsp:getProperty id=”YoshiBean” property=”size”/>G.<jsp:getProperty name=”YoshiBean” property=”size”/>4、设float x = 1,y = 2,z = 3,则表达式 y+=z--/++x的值是:()A. 3.5B. 3C. 4D. 55、下面的哪些叙述为真:()A.equals()方法判定引用值是否指向同一对象B.==操作符判定两个不同的对象的内容和类型是否一致C.equal()方法只有在两个对象的内容一致时返回trueD.类File重写方法equals()在两个不同的对象的内容和类型一致时返回true6、如果一个对象仅仅声明实现了cloneable接口,但是不声明clone方法,外部能够调用其clone方法吗?()A. 能B. 不能C. 不确定7、下列说法错误的有()A.能被java.exe成功运行的java class文件必须有main()方法B. J2SDK就是Java APIC. Appletviewer.exe可利用jar选项运行.jar文件D.能被Appletviewer成功运行的java class文件必须有main()方法8、下列正确的有()A. call by value不会改变实际参数的数值B. call by reference能改变实际参数的参考地址C. call by reference不能改变实际参数的参考地址D. call by reference能改变实际参数的内容9、下列说法错误的有()A.数组是一种对象B.数组属于一种原生类C. int number=[]={31,23,33,43,35,63}D.数组的大小可以任意改变10、不能用来修饰interface的有()A.private B.public C.protected D.static 11、关于Float,下列说法正确的是A.Float是一个类B.Float在ng包中C.Float a=1.0是正确的赋值方法D.Float a= new Float(1.0)是正确的赋值方法12、下列哪种说法是正确的()A.实例方法可直接调用超类的实例方法B.实例方法可直接调用超类的类方法C.实例方法可直接调用其他类的实例方法D.实例方法可直接调用本类的类方法13、下列说法错误的有()A.在类方法中可用this来调用本类的类方法B.在类方法中调用本类的类方法时可直接调用C.在类方法中只能调用本类中的类方法D.在类方法中绝对不能调用实例方法14、下面说法哪些是正确的?A.Applet可以访问本地文件B.对static方法的调用不需要类实例C.socket类在ng中D.127.0.0.1地址代表本机15、类Test1、Test2定义如下:1.public class Test1 {2.public float aMethod(float a, float b) throws3.IOException { }4.}5.public class Test2 extends Test1 {6. //Line67.}将以下()方法插入行6是不合法的。

Java软件开发工程师笔试题及答案

Java软件开发工程师笔试题及答案

Java软件开发工程师笔试题及答案考试时间:120分钟姓名:___________ 成绩:___________一、选择题(共40题,每题2分)1.下列表达式正确的( )A、byte b = 128;B、boolean flag = null;C、float f = 0.9239;D、long a = 2147483648L;2.下列运算符合法的是( )A、&&B、<>C、ifD、:=、3.如下哪个不是java的关键字( )A、constB、NULLC、ifD、this4.提供Java存取数据库能力的包是( )A、java.sqlB、java.awtC、ngD、java.swing5.下列哪一种叙述是正确的( )A、abstract修饰符可修饰字段、方法和类B、抽象方法的body部分必须用一对大括号{ }包住C、声明抽象方法,大括号可有可无D、声明抽象方法不可写出大括号6.关于源文件,下列说法错误的是( )A、一个源文件里可以有多个class声明B、一个源文件里只能有一个class用public修饰C、源文件的名称只要和源文件里任意一个类名相同即可D、在开发的时候,如果两个类不存在嵌套关系,最好是一个源文件只有一个类7.已知表达式int m [ ] = {0,1,2,3,4,5,6};下面哪个表达式的值与数组下标量总数相等( )A、m.length()B、m.lengthC、m.length()+1D、m.length-18.下列程序的输出结果是()String str = null;System.out.println(a+2);A、2B、”2”C、”null2”D、” null+2”9.下列程序的输出结果是()int a = 012;int b = a < < 1;System.out.println(b);A、20B、24C、falseD、2110.下列程序的输出结果是()int a = 0x12;int b = a < < 1;System.out.println(b);A、36B、24C、falseD、2111.下列程序的输出结果是()int a = 23;int b = 5;System.out.println(a % b);A、4B、3C、4.6D、012.下列程序的输出结果是()double a = 23.0;double b = 5.0;System.out.println(a % b);A、4B、3C、4.0D、3.013.下列程序的输出结果是()int i = 2;i = i ++;int j = i ++;System.out.println(i+”, ”+j);A、2, 1B、2, 2C、2, 3D、3, 214.关于线程设计,下列描述正确的是()A、线程对象必须实现Runnable接口;B、启动一个线程直接调用线程对象的run()方法;C、Java提供对多线程同步提供语言级的支持;D、一个线程可以包含多个进程;15.欲构造ArrayList类得一个实例,此类继承了List接口,下列哪个方法是正确的()A、ArrayList myList = new Object();B、List myList = new ArrayList();C、ArraylList myList = new List();D、List myList = new List();16.下哪一个类型不能作为switch语句表达式的类型()A、intB、charC、StringD、short17.下面哪行代码有编译问题()public class Test{public void Test(){ //①}public Test(String str){ //②System.out.println(str);}public static void main(String[] args){Test t1 = new Test(); //③Test t2 = new Test(“hello”); //④}}A、①B、②C、③D、④18.关于Map和List,下面说法正确的是()A、Map继承ListB、List中可以保存Map或ListC、Map和List只能保存从数据库中取出的数据D、Map的value可以是List或Map19.下列描述正确的是()A、数组是一种对象B、数组属于一种原生类C、int number=[]={31,23,33,43,35,63}D、数组的大小可以任意改变20.关于package,下列说法不正确的是()A、package的作用是可以对类进行分类管理B、package提供了包一级的封装C、package语句不必是类的第一条非注释代码D、package声明的包可以有子包,但两个子包的名称不能相同21.关于权限修饰符,下列说法错误的是()A、权限修饰符可以用来修饰类和类的成员B、public权限最大,可以跨包访问C、protected权限允许在同一个包访问D、类不能用private修饰22.下列哪种说法是正确的()A、实例方法可直接调用超类的实例方法B、实例方法可直接调用超类的类方法C、实例方法可直接调用其他类的实例方法D、实例方法可直接调用本类的类方法23.阅读下面的程序public class X extends Thread implements Runnable{public void run(){System.out.println("this is run()");}public static void main(String args[]){Thread t=new Thread(new X());t.start();}}正确的判断是()A、第一行会产生编译错误B、第六行会产生编译错误C、第六行会产生运行错误D、程序会运行和启动24.阅读下面的程序public class A{private int value;public A(int value){setValue(value);}public setValue(int value){this.value = value;}}public class Test{public static void main(String[] args){int i = 1;A a = new A(1);modify (i);modify (a);}public static void modify(int i){i = 10;}public static void modify (A a){a.setValue(10);}}关于main方法的执行,正确的判断是()A、i的值改变了,a的成员变量的值改变了B、i的值改变了,a的成员变量的值没有改变C、i的值没有改变,a的成员变量的值改变了D、i的值没有改变,a的成员变量的值没有改变25.关于eqauls方法,下列说法错误的是()A、用==判断两个对象相等B、用对象的eqauls方法判断两个对象相等C、根类Object的eqauls方法的实现机制是判断参数指向的对象和自身是否为同一个对象D、如果我们要判断对象相等,通常需要覆盖eqauls方法26.下面哪行代码有编译问题()public class Test{public static void main(String[] args){int[] a = {}; //①String[] str = {}; //②a = new int[]{}; //③str = {”1”,”2”}; //④}}A、①B、②C、③D、④27.下面哪种定义一个二维数组的方式是错误的()A、int[][] a = new int[5][];B、int[][] a = new int[][5];C、int[][] a = {};D、int[][] a = {{}};28.String s=new String(“hello”);String t =new String(“hello”);char c [ ] ={‘h’,’e’,’l’,’l’,’o’};下列哪些表达式返回true()(多选)A、s.equals(t);B、t.equals(c);C、s= =tD、t.equals (new String(“hello”));29.阅读下面代码:String str1 = “abc”;String str2 = new String(“abc”);boolean b1 = str1 == str2;boolean b2 = str1.eqauls(str2);判断正确的是()A、b1的值为true,b2的值为trueB、b1的值为false,b2的值为trueC、b1的值为true,b2的值为falseD、b1的值为false,b2的值为false30.对于下列代码:public class Parent {public int addValue (int a ,int b ){int s;s = a + b;return s;}}class Child extends Parent {}下述哪个方法可以加入类Child()A、int addValue(int a ,int b){//do something…}B、public void addValue(){//do something…}C、public int addV alue(){//do something…}D、public int addValue( int a, int b )throws MyException {//do some thing…}31.关于异常(Exception),下列说法错误的是()A、异常的基类为Exception,所有异常都必须直接或者间接继承它B、异常可以用try{ . . .}catch(Exception e){ . . .}来捕获并进行处理C、如果某异常继承RuntimeException,则该异常可以不被声明D、异常可以随便处理,而不是抛给外层的程序进行处理32.下列关于栈的叙述正确的是()A、栈是非线性结构B、栈是一种树状结构C、栈具有先进先出的特征D、栈具有后进先出的特征33.有关线程的哪个叙述是错误的()A、一旦一个线程被创建,它就立即开始运行。

软件开发人员招聘笔试试题

软件开发人员招聘笔试试题

试题一:综合(基本知识引导,思考,)1.面向对象语言的特征中字符流和字节流的区别?2.和的区别的生命周期? 的生命周期?3.协议是长连接还是短连接?4.的基本数据类型有那些? 是不是基本类型?5.的概念和在项目中的应用?6.如何避免多个的读写阻塞1.4新增了那些方法解决这个问题?7.如果一个变量的值为,观察以下程序:8.变量分支1;分支2;程序最终执行那一个分支?9.中有那些重定向方法,它们的区别的优势和特点和的区别?10.在数据库中,一个表被删除后,还能否将空间分配给其它表哪?11.在数据库中,一个表有两千万条数据,怎样最有效的将其删除?12.在数据库中,如果处理表中的每一条数据,用那种方法?13.发送一条邮件的几个步骤在中如何初始化上下文14.常用的组件技术?会话的属性?实体的属性?15.与的区别?16.编程具体步骤?事务模式?17.容器管理事务的事务属性为的意义18.事务失败时的会话的重新初始化方法19.中开发应用通常遵循的步骤试题二:分类试题(分类必作题)基础1.作用域,以与不写时的区别?2.和的区别, 和的区别3.型变量中能不能存贮一个中文汉字?为什么?4.多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?5.继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么?6.内部类的实现方式?父类:;{(){(" ");}}子类:;;{(){(" ");}([] ){= ();= ();}}输出结果:7. 3. ?( .){d1 = 1.0;}3.( .)A. { .静态内部类可以有静态成员,而非静态内部类则不能有静态成员 () { d1;}}B. { .静态内部类可以有静态成员,而非静态内部类则不能有静态成员() { d1;}}C. {() { d1;}}D. {() { d1;} 静态内部类的非静态成员不可访问外部类的非静态变量}E. {();}8.垃圾回收机制,如何优化程序?9.型 3.4是否正确?10.介绍中的 (包括如何写自己的数据结构)?11.中异常处理机制,事件机制?12.中的多形与继承?13.抽象类与接口?14.的通信编程,用编程,读服务器几个字符,再写入本地显示?15.用实现一种排序,类实现序列化的方法(二种)?如在框架中,实现比较要实现什么样的接口?16.编程:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。

中原银行软件开发笔试题目

中原银行软件开发笔试题目

中原银行软件开发笔试题目1. 设计一个银行账户管理系统,要求具有以下功能:- 添加新账户- 查询账户余额- 存款- 取款- 转账- 关闭账户2. 编写一个函数,用于验证输入的银行卡号是否合法。

要求银行卡号满足以下条件:- 卡号长度为16位或19位- 只能包含数字字符- 满足Luhn算法校验:最后一位是校验位,通过将卡号中的每个数字从右到左,从左边的第一个数字开始,将每位数字乘以2的相应次方并求和。

最后将其与校验位进行对比,如果能整除10,则校验通过。

3. 假设有一张银行卡,账户余额为10000元,设计一个多线程程序模拟5个人同时进行取款操作,每个人随机取款金额为1000-2000元。

要求使用线程同步机制,确保账户余额的正确计算。

4. 实现一个简单的ATM机程序,要求具有以下功能:- 查询账户余额- 取款- 存款- 转账- 修改密码- 查看交易记录5. 设计一个面向对象的银行系统,要求具有以下类和功能:- 银行类:负责创建和管理账户,提供开户、销户、查询账户、查询总存款等方法。

- 账户类:包括账户号、账户名、账户余额等属性,提供存款、取款、转账等方法。

- 银行管理类:负责与用户交互,提供菜单选择、账户管理等功能。

6. 假设中原银行要开发一个移动银行APP,要求具有以下功能:- 用户注册和登录- 查询账户余额和交易记录- 转账和收款- 生成个人和系统对账单- 修改交易密码和查看密码修改记录7. 编写一个函数,用于将阿拉伯数字转换为中文大写金额。

例如,输入12345678.9,输出壹千贰佰叁拾肆万伍仟陆佰柒拾捌元玖角。

8. 实现一个自动化测试脚本,用于测试中原银行的网银系统。

要求测试包括登录、查询账户余额、转账、修改密码等功能,检查是否符合预期结果并生成测试报告。

9. 设计一个银行排队叫号系统,要求具有以下功能:- 顾客取号和叫号- 提供多个窗口服务,每次只叫一个顾客- 顾客可以在柜台办理业务并完成后离开- 支持查看当前等待人数和平均等待时间。

中级Java软件开发工程师笔试题(附答案)

中级Java软件开发工程师笔试题(附答案)

中级Java软件开发工程师笔试题(附答案)问题:中级Java软件开发工程师笔试题(附答案)回答:Part I ,总计70分-一、单选题(共12题,每题2分,共24分)1.下面关于Java的表述有错误的是________A.Java中没有sizeof操作符,所有数据类型的长度都是确定的,与平台无关。

B.在Java中,局部变量不会被自动初始化,需要显式的赋初值。

C.Java中的instanceof运算符,可以判断一个对象是否属于某个类的实例。

D.一个Java文件里可以有多个public类,但Java文件名必须和包含main方法的那个public类名精确一致。

2.下面关于Java中static关键字的表述错误的是________A.被static修饰的类成员变量在编译时由内存分配一块空间,直到程序停止运行才会被释放。

B.被static修饰的类方法只能访问其自身类未被static修饰的实例方法,而不能访问其他类的。

C.被static修饰的类方法不能使用this关键字。

D.在没有创建该类的对象时,该类中用static修饰的类方法就可以被调用。

3.下面关于Java中abstract关键字的表述有错误的是________ A.用abstract修饰不在类内实现的方法,称为抽象方法;抽象方法必须在子类派生时被重载。

B.用abstract修饰的类为抽象类;抽象类可以同时被static或final关键字修饰。

C.抽象类中不一定包含抽象方法,但包含抽象方法的类一定要声明为抽象类。

D.如果一个类被定义为抽象类,则该类不能进行实例化。

4.下面关于Java中垃圾回收(gc)的表述有错误的是_______ A.在String str1 = Hello String str2 = str1;str1 = null;中,对象Hello 不会被垃圾回收。

B.调用Runtime.getRuntime().gc()会立即启动垃圾回收线程对当前程序进行垃圾回收。

软件开发类岗位笔试题附答案

软件开发类岗位笔试题附答案

软件开发类岗位笔试题附答案1. 下列哪种方式可以用来实现线程继承Thread类实现Runnable接口应用程序可以使用Executor框架来创建线程池以上皆可以2. 在Java EE中,Servlet是在服务器端运行,以处理客户端请求而做出的响应的程序,下列选项中属于Servlet生命周期阶段的是加载与实例化初始化销毁以上皆是3. 下面哪个选项,“不属于”线程在执行过程中的状态就绪(Runnable):线程准备运行,不一定立马就能开始执行。

运行(Start):进程正在执行线程的代码。

睡眠中(Sleeping):线程被强制睡眠。

同步阻塞(Blocked on Synchronization):等待获取锁。

4. JavaBean是在Java中开发的可以跨平台的重用组件,JavaBean必须满足的要求中“不包括”以下哪个选项必须带有一个无参构造函数JavaBean内的成员属性都须定义为private或者public可通过setter、getter取得和设置属性JavaBean 类必须是一个公共类5. 关于throw和throws的区别,下列叙述“错误”的是throws出现在方法函数头;而throw出现在函数体。

throws一定抛出异常;throw则表示出现异常的可能性。

两者都是消极处理异常的方式以上都错误6. Java中,可通过Random类的nextInt方法生成一个随机数Random random = new Random();int i = random.nextInt(10);那么在以上代码中,“i”的值可能为-10100.57. 下列关于栈的叙述中正确的是?在栈中只能插入数据在栈中只能删除数据栈是先进先出的线性表栈是先进后出的线性表或数组8. 以下数据结构属于“非线性数据结构”的是?队列线性表二叉树栈9. 下面选项哪些“不是”Thread类的方法()start()exit()sleep()join()10. 关于JDBC的叙述中,以下“错误”的是JDBC使用步骤为:加载驱动,建立连接,创建执行Statement ,处理执行ResultSet ,释放资源ResultSet接口将执行SQL所生成结果的对象返回Statement接口可用于执行静态SQL语句Connection接口与特定数据库的连接(会话),在连接上下文中执行sql语句并返回结果11. 下列关于接口与抽象类的叙述中,“错误”的是抽象类可以有构造器;接口不能有构造器。

软件开发工程师笔试题

软件开发工程师笔试题

软件开发工程师笔试题第一篇:软件开发工程师的核心能力作为一名软件开发工程师,具备一定的技术能力是至关重要的。

下面我将从编程语言、算法与数据结构以及软件工程等方面探讨软件开发工程师的核心能力。

首先,掌握一个或多个编程语言是软件开发工程师的基本要求。

编程语言是软件开发的工具,它们提供了一套编程规则和语法,帮助开发人员编写和运行代码。

常见的编程语言包括C++、Java、Python 等。

熟练掌握编程语言,能够编写高效、可维护的代码,是软件开发工程师能否胜任工作的关键。

其次,算法与数据结构是软件开发工程师的核心竞争力。

软件开发过程中,面对不同的问题,需要根据具体情况选择合适的算法来解决。

同时,运用合适的数据结构可以提高程序的执行效率。

因此,软件开发工程师需要具备良好的算法思维能力和数据结构设计能力。

只有掌握了高效的算法与数据结构,才能使软件运行更稳定、更快速。

最后,软件开发工程师还需要具备优秀的软件工程能力。

软件工程是一门关于软件开发过程和方法学的学科,它包括软件需求分析、软件设计、软件测试、软件维护等各个环节。

在软件开发过程中,软件工程能力可以帮助工程师规范开发流程、提高代码质量、降低维护成本。

因此,软件开发工程师需要具备良好的软件工程素养,才能更好地完成开发任务。

总结起来,作为一名软件开发工程师,掌握编程语言、算法与数据结构以及软件工程等方面的能力是必不可少的。

只有从这些方面全面发展,才能胜任软件开发工作,并取得良好的开发成果。

第二篇:软件开发工程师的职责与挑战软件开发工程师是一个非常重要的职业,在迅速发展的科技领域承担着巨大的责任和挑战。

下面我将从职责和挑战两个方面来探讨软件开发工程师的工作。

首先,软件开发工程师的主要职责是根据需求开发、维护和优化软件系统。

他们负责从系统设计到编码实现的全过程,并保证软件的质量和性能。

在软件开发过程中,他们还需要与团队成员密切合作,共同解决技术难题,完成软件的开发任务。

电子软件开发岗位招聘笔试题及解答(某大型央企)

电子软件开发岗位招聘笔试题及解答(某大型央企)

招聘电子软件开发岗位笔试题及解答(某大型央企)一、单项选择题(本大题有10小题,每小题2分,共20分)1、在电子软件开发中,哪种编程语言常用于嵌入式系统开发?A)PythonB)JavaScriptC)C/C++D)Java答案:C解析:在嵌入式系统开发中,由于资源受限(如内存和处理能力),通常需要选择轻量级且高效的编程语言。

C/C++因其接近硬件、执行效率高且对资源占用少的特点,成为嵌入式系统开发的常用编程语言。

Python、JavaScript和Java虽然也是广泛使用的编程语言,但在嵌入式系统中,它们通常不是首选,因为相对于C/C++,它们对资源的需求更高。

2、以下哪种数据结构最适合用于实现一个优先级队列?A)链表B)栈C)队列D)堆(Heap)答案:D解析:优先级队列是一种特殊的队列,其中的元素被赋予优先级,优先级最高的元素将最先被移除。

堆(特别是二叉堆)是实现优先级队列的一种非常有效的方式。

堆是一种特殊的完全二叉树,其中每个节点的值都大于或等于(最大堆)或小于或等于(最小堆)其子节点的值。

这种结构使得在堆的顶部(根节点)始终可以找到优先级最高(或最低)的元素,并且可以高效地插入新元素和移除顶部元素,因此非常适合用于实现优先级队列。

链表、栈和普通的队列虽然也可以用来实现优先级队列,但效率通常不如堆。

3、在电子软件开发中,哪种编程语言常用于嵌入式系统开发,具有高效、紧凑的特点?A. PythonB. JavaC. C/C++D. JavaScript答案:C 解析:在嵌入式系统开发中,由于资源受限(如处理器速度、内存大小等),通常需要选择高效、紧凑的编程语言。

C/C++语言因其接近硬件、执行效率高、代码紧凑等特点,在嵌入式系统开发中广泛应用。

Python虽然简单易学,但执行效率较低,不适合资源受限的嵌入式环境;Java虽然跨平台,但在嵌入式领域通常需要特定的虚拟机支持,且可能带来额外的资源消耗;JavaScript主要用于网页开发,与嵌入式系统开发关系不大。

(完整版)开发人员笔试题库

(完整版)开发人员笔试题库

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

A )数据存储结构B )软件体系结构C )软件结构测试D )软件控制过程答案:B评析:从工程管理角度来看,软件设计分两步完成:概要设计和详细设计。

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

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

3. 软件测试类型按开发阶段划分是A. 需求测试、单元测试、集成测试、验证测试B. 单元测试、集成测试、确认测试、系统测试、验收测试C. 单元测试、集成测试、验证测试、确认测试、验收测试D. 调试、单元测试、集成测试、用户测试 4.对于业务流清晰的系统可以利用 D 贯穿整个测试用例设计过程广在用例中综合使用各种测试方法,对于参数配置类的软件,要用 C 选择较少的组合方式达到最佳效果。

A. 等价类划分B .因果图法C.正交试验法 D.场景法 A.等价类划分B .因果图法C.正交试验法D.场景法6. 在深度为5的满二叉树中,叶子结点的个数为评析:就是说,在满二叉树中,每一层上的结点数都达到最大值,即在满二叉树的第 层上有2K-1个结点,且深度为m 的满二叉树有2m 个结点。

5. 超出项目经理控制的成本增加因素, 括()D 。

A .项目日常开支的速度和生产率B C.项目补贴和加班D除了存款利率、贷款利息和税率外, 还包.项目日常开支的速度和工期拖延•原材料成本和运输成本A)32答案: B)31 C)16 D)15C所谓满二叉树是指除最后一层外, 每层上的所有结点都有两个子结点。

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

A)cedba B)acbed C)decab D)deabc答案:A 评析:二叉树BT的后序遍历序列为dabec,故BT的根结点为c;而BT的中序遍历序列是debac,即遍历序列中最后一个结点为跟结点,说明BT的右子树为空。

软件开发企业招聘笔试题目

软件开发企业招聘笔试题目

软件开发企业招聘笔试题目1. 编写一个程序,将一个由小写字母组成的字符串进行反转,并输出结果。

2. 实现一个函数,输入一个字符串,判断该字符串是否为回文串。

回文串是指正读和反读都一样的字符串。

3. 编写一个程序,统计一个字符串中每个字符出现的次数,并按照字典序输出结果。

4. 实现一个函数,输入一个整数n,计算并输出从1到n的所有整数的和。

5. 编写一个程序,实现两个矩阵的相加操作,并输出结果。

6. 编写一个函数,输入一个正整数n,判断该数是否为素数。

素数是指只能被1和自身整除的数。

7. 实现一个程序,输入一个整数n,输出斐波那契数列的第n项结果。

斐波那契数列前两项为0和1,之后的每一项都是前两项的和。

8. 编写一个程序,实现字符串的去重操作,即去除字符串中重复的字符,并按照原始顺序输出结果。

9. 实现一个函数,输入一个字符串,判断该字符串是否为有效的括号匹配。

有效的括号匹配是指每个左括号都有与之对应的右括号,且括号的顺序正确。

10. 编写一个程序,输入一个整数n,输出n的阶乘结果。

11. 实现一个函数,输入两个整数a和b,计算并输出a的b次方结果。

12. 编写一个程序,实现字符串的反转操作,并输出结果。

13. 实现一个函数,输入一个整数n,判断该数是否为完数。

完数是指除了自身之外的所有正约数的和等于该数本身的数。

14. 编写一个程序,输入一个字符串,统计字符串中元音字母的个数,并输出结果。

15. 实现一个函数,输入一个整数n,输出n的前n项斐波那契数列结果。

以上是软件开发企业招聘笔试题目的一部分。

这些题目涵盖了基本的编程算法和字符串操作,可以帮助企业初步筛选应聘者的编程能力。

在实际笔试中,可以根据需求选择合适的题目,并结合编程语言的要求进行评判。

通过笔试,能够更好地了解应聘者的技术实力和解决问题的能力,为企业招聘合适的人才提供参考。

软件开发笔试题选择题

软件开发笔试题选择题

软件开发笔试题选择题1、(多选)下面关于哈夫曼树的描述中,错误的是(ABD)A、哈夫曼树一定是完全二叉树B、哈夫曼树一定是平衡二叉树C、哈夫曼树中权值最小的两个节点互为兄弟节点D、哈夫曼树中左孩子节点小于父节点,右孩子节点大于父节点。

2、(多选题) Linux系统的优势有(AB)A. 多用户多任务,使用者与群组的规划B. 稳定、高效和安全C. 实时操作系统D. 高游戏支持度3. (单选题) 以下哪项用来确定路由优先级?(A)A.路由协议算法的优劣B. 到目标网络的跳数C.发送接口的带宽D.物理链路的可靠性4. (多选题) auto_ ptr 类使用必须满足下列限制:(ABCD)A. 不要使用auto. ptr对象保存指向静态分配对象的指针。

B. 不要使用两个auto. ptrs对象指向同-对象。

C. 不要使用auto_ ptr对象保存指向动态分配数组的指针。

D. 不要将auto.ptr对象存储在容器中。

5. (单选题) 若要将当前目录中的myfle.txt文件压缩成myfile.txt.tar.gz,命令为(C)A. tar -cvf myfile.txt myfile.txt.tar.gzB. tar -zcvf myfile.txt myfile.txt.tar.gzC )C. tar -zcvf mfle.txt.tar.gz myfile.txtD. tar -cvf myfle.txt.tar.gz myfile.txt6 .(单选题)在Linux系统下,要将wangyi.txt压缩wangyi.txt.tar.gz,下面那个命令可以实现?(D)A. gzip &ndash;r wangyi.txt.tar.gz wangyi.txtB. gzip &ndash;r wangyi.txt wangyi.txt.tar.gzC. tar &ndash;zcvf wangyi.txt wangyi.txt.tar.gzD. tar &ndash;zcvf wangyi.txt.tar.gz wangyi.txt7. (单选题)在C++语言中,下列说法正确的是:(D)A.inline函数表示编译器一定会将函数体直接插入到到调用此函数的地方,这样可以加快程序的运行速度B.局部变量和全局变量不能重名C.静态局部变量内存是在运行期分配的,存储在堆栈区(静态局部变量存在静态存储区,而局部变量存储在堆栈区,确切的说是栈区)D. C++不是类型安全的语言8.(单选题)代码生成阶段的主要任务是:(C)A.把高级语言翻译成机器语言B.把高级语言翻译成汇编语言C.把中间代码变换成依赖具体机器的目标代码D.把汇编语言翻译成机器语言9.(单选题) void swap_ _int(int *a,int *b){ *a=*a+*b;*b=*a-*b; *a=*a-*b; }以下说法正确的是:(B)A.结果不正确,因为会溢出,用位与的方式就没问题B.结果正确,即使会溢出C.结果正确,不会溢出D.其他选项都不对10. (单选题)C++中以下关于函数调用的说法哪个是正确的?(D)A.传地址后实参和形参指向不同的对象B.传引用后实参和形参是不同的对象 //传引用后实参和形参应该是同一个对象的引用C.传值后对形参的修改会改变实参的值D.其他三项都不对11. (单选题)C++中关于堆和栈的说法,哪个是错误的: (C)A.堆的大小仅受操作系统的限制,栈的大小一-般一般较小B.在堆上频繁的调用new/delete容易产生内存碎片,栈没有这个问题C.堆和栈都可以静态分配D.堆和栈都可以动态分配12. (多选题)可以使用memset, memcpy直接进行初始化和拷贝的有:(ABD)A.结构B.枚举C.类实例D.指针13.(单选题) x是一个行列数均为1000二维数组,下面代码效率执行最高的是(D)A. for(int j=0;j<1000;j++) for(int i=0;i<1000;i++)X[i][j]+=X[j][i];B. for(int i=0;i<1000;j++) for(int j=0;j<1000;j++)X[i][j]+=X[j][i];C. for(int i=0;i<1000j++) for(int j=0;j<1000;j++)X[j][i]+=x[j][i];D. for(int i=0;i<1000;++) for(int j=0;j<1000;j++)X[i][j]+=x[i][j];14.(单选题)引入多道程序技术以后,处理器的利用率(C)A.降低了B.没有变化,只是程序的执行方便了C.大大提高D.没有影响15.(多选题) TCP首部报文信息中跟建立链接有关的是(BD)A. PSHB. SYNC. FIND. ACK16.(多选题)关于TCP协议以下说法正确的是: (BD)A. 通讯双方被动关闭的一方进入TIME_ _WAIT状态B. TIME_ _WAIT状态会持续2个MSLC. TIME_ _WAIT状态会持续1个MSLD.通讯双方主动关闭的一方进入TIME_ _WAIT状态17.(多选题)关于二叉树,下面说法正确的是(BD)A.二叉树中至少有一个节点的度为2B.一个具有1025个节点的二叉树,其高度范围在11到1025之间(在完全二叉树中,具有n个结点的完全二叉树深度为(log2n)+1,其中(log2n)+1是向下取整;满二叉树的深度为k=log2(n+1))?C.对于n个节点的二叉树,其高度为nlognD. 二叉树的先序遍历是EFHIGJK,中序遍历为HFIEJKG,该二叉树的右子树的根为G18.(多选题)下面算法中可以判断出一个有向图是否有环的是:(BD)A.求最短路径B.深度优先遍历C.广度优先遍历D.拓扑排序19.(单选题)修改替换file文件中myname字段为name,下列正确的是:(D)A. sed 's@name@myname@g fileB. sed -i 's@name@myname@g' fileC. sed 's@myname@name@g' fileD. sed -i 's@myname@name@g' file20.(单选题)有一个算法的递推关系式为: T(N) = T(2N/3)+ 1,则该算法的时间复杂度为(D) (^符号是幂的意思)A. 0(1)B. 0(N^log2(3))C. 0(N|og3(2))D. 0(logN)21.(单选题)某表达式的后缀表达式为AB+CD+/E*,该表达式原型可能为以下哪个?(D)A. A+B/(C+D)*EB. ((A+B)/C+D)*EC. (A+B/C+D)*ED. (A+B)/(C+D)*E22.(主观题)简述下面几项定义各自表达的含义:a. int *ptr[n]b. int (*)ptr[n]c. int *ptr()d. int (*)ptr()e. int (* ((*ptr(int, int)))(int)23.(单选题)在高性能、高并发的网络应用的主路径上,进行下面哪项操作是合理的? (C)A. 主动sleep 1秒B. 访问同一内网中的memcached,超时时间设为5秒C. 调用getaddrinfo进行域名解析D. 访问同一内网中的外存数据库,超时时间设为124.(多选题)下列说法错误的是(ABD)A. 已知- -颗二叉树的前序遍历顺序和后序遍历顺序,可以唯一-确定这棵二叉树B.将一个递归算法改为非递归算法时,通常使用队列作为辅助结构C.快速排序和堆排序都是不稳定排序。

计算机软件笔试题及答案

计算机软件笔试题及答案

计算机软件笔试题及答案一、选择题1. 下列关于软件工程的描述,错误的是()。

A. 软件工程是指导计算机软件开发和维护的工程学科B. 软件工程的目标是提高软件的质量和开发效率C. 软件工程只关注软件的开发过程D. 软件工程包括软件需求分析、设计、编码、测试和维护等活动2. 在软件开发过程中,需求分析阶段的主要任务是()。

A. 编写代码B. 设计软件架构C. 确定软件的功能和性能要求D. 进行软件测试3. 面向对象编程的主要特征不包括()。

A. 封装B. 继承C. 多态D. 过程化二、填空题1. 在软件开发中,______是指将软件系统分解成模块的过程,它有助于提高软件的可维护性和可扩展性。

2. 数据库管理系统(DBMS)的核心功能是数据的______、______和______。

3. 在面向对象设计中,______是一种创建对象的方式,它允许通过复制现有对象来创建新对象。

1. 简述敏捷软件开发方法的特点。

2. 什么是软件测试?为什么软件测试对于软件开发过程至关重要?四、编程题1. 编写一个函数,实现对给定整数列表进行排序,并返回排序后的列表。

(可以使用任意编程语言)五、案例分析题1. 假设你是一个软件项目经理,你的团队正在开发一个新的电子商务平台。

描述你将如何管理这个项目,以确保按时交付并满足所有功能需求。

答案:一、选择题1. C2. C3. D二、填空题1. 模块化2. 存储、检索、管理3. 克隆(或复制)三、简答题1. 敏捷软件开发方法的特点包括:迭代开发、持续交付、团队协作、客户参与、适应变化等。

2. 软件测试是验证软件产品是否符合需求和预期的过程。

它对于软件开发至关重要,因为它可以帮助发现和修复缺陷,提高软件质量,减少维护成本,确保软件的可靠性和安全性。

1. Python示例代码:```pythondef sort_list(lst):return sorted(lst)# 测试函数print(sort_list([3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]))```五、案例分析题1. 作为项目经理,我会采取以下步骤管理电子商务平台项目:- 明确项目目标和需求- 制定详细的项目计划和时间表- 选择合适的开发方法和工具- 分配资源和任务给团队成员- 定期召开会议,跟踪项目进度- 与客户保持沟通,确保需求被正确理解和实现- 进行风险管理,及时应对可能出现的问题- 进行质量控制和测试,确保产品符合预期- 在项目结束时,进行总结和评估,为未来的项目提供经验教训。

软件开发笔试题

软件开发笔试题

软件开发类笔试题Part I: C语言基础(30分)1.(4分)用变量a给出下面的定义a)一个整型数:__________________b)一个指向整型数的指针:__________________c)一个指向指针的的指针,它指向的指针是指向一个整型数:__________________d)一个有10个整型数的数组:__________________e)一个有10个指针的数组,该指针是指向一个整型数的:__________________f)一个指向有10个整型数数组的指针:__________________g)一个指向函数的指针,该函数有一个整型参数并返回一个整型数:_____________________h)一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数___________________________________________________________________________________2.(2分)请写出以下语句输出的结果:int i = 43 ;int j = 5 ;double f = 25.45181 ;a)printf("i=%d, j=%d, f=%3.2f" , i , j , f ) :_________________________________________b)printf("i=%X, j=%06d, i/j=%d" , i , j , i/j ) :_________________________________________3.(2分)请完成以下宏定义a)用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)_______________________________________________________________________________ b)写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个_______________________________________________________________________________4.(3分)以下为32位Windows下的C++程序,请计算:char srt[]=“Hello”;char *p=str;请计算:sizeof(str)=sizeof(p)=strlen(p)=void Func (char str[100]){void *p=malloc(100);}请计算sizeof(str)=sizeof(p)=int a[3]={1,2,3};int b=sizeof(a)/sizeof(a[0]);请计算:b=5.(2分)设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是()A)p=1; B)*q=2; C)q=p; D)*p=5;6.(1分)下面是C语言中两种if语句判断方式。

软件工程师笔试题及答案

软件工程师笔试题及答案

软件工程师笔试题及答案一、选择题1. 在面向对象编程中,封装的目的是:A. 隐藏数据B. 隐藏方法C. 隐藏数据和方法D. 隐藏类答案:C2. 下列哪个不是Java的基本数据类型?A. intB. floatC. StringD. double答案:C3. 在软件开发中,哪个阶段是进行需求分析?A. 计划阶段B. 需求分析阶段C. 设计阶段D. 编码阶段答案:B二、简答题1. 请简述软件开发生命周期(SDLC)的主要阶段。

答案:软件开发生命周期(SDLC)的主要阶段包括:- 需求收集与分析- 系统设计- 编码与实现- 测试- 部署- 维护2. 什么是递归算法?请举例说明。

答案:递归算法是一种在问题解决过程中调用自身的算法。

它通常用于解决可以分解为相似子问题的问题。

例如,计算阶乘的算法就是一个递归算法:```int factorial(int n) {if (n == 0) return 1;return n * factorial(n - 1);}```三、编程题1. 编写一个函数,实现字符串的反转。

示例代码:```pythondef reverse_string(s):return s[::-1]```2. 给定一个整数数组,请找出其中最大的连续子数组和。

示例代码:```pythondef max_subarray_sum(arr):max_sum = current_sum = arr[0]for num in arr[1:]:current_sum = max(num, current_sum + num)max_sum = max(max_sum, current_sum)return max_sum```四、案例分析题1. 描述一个你参与过的软件项目,并解释你在项目中的角色和贡献。

答案:(此处应根据个人经验填写具体内容,包括项目名称、使用的技术和工具、个人职责、解决的问题以及取得的成果等。

Java软件开发工程师笔试题(标准答案)

Java软件开发工程师笔试题(标准答案)

Java工程师笔试题一、填空题(本大题10小题,每空1分,共20分)。

1.Java语言的三大特性即是: 继承、封装、多态。

2.在Java中,char 型采用____unicode_______编码方案,这样,无论是中文字符还是英文字符,都是占用__2___个字节的内存空间。

3. 形式参数指的是方法被__定义____ 时的参数行,实际参数是方法被__调用__ _ 时所传递进去的变量或值。

4.JSP对象则是每个客户专用的。

接口。

6.程序中实现多线程的方法有两种:继承Thread类和实现___Runable _ 接口。

对优先级。

8.面向对象编程的五大设计原则,分别是单一职责、开放封闭、里氏替换、依赖倒置、接口分离9.通过Ajax,客户端获取的数据主要有两种类型:文本型和xml10.Socket通常也称为套接字,用于描述__ ip 和_ _接口二、选择题(本大题20 小题,每小题2分.共40分)。

1.在JA V A中,如果父类中某些方法不包含任何逻辑,并且需要由子类重写.应该使用( )关键字来声明父类的这些方法:A) final B) static C) abstract D) void2.在JA V A中,已定义两个接口B和C,要定义一个实现这两个接口的类,以下语句正确的是()。

A) interface A extend B,C B) interface A implements B,CC) class A implements B,C D) class A implements B, implements C3.在JA V A接口中可以定义( )。

A) 静态方法B) 常量C) 构造方法D) 抽象方法4.假设A有构造方法A (int a),则在类A的其他构造方法中调用该构造方法和语句格式应为()。

A) A(X) B) this.A(x) C) this(x) D) super(x)5.设x = 1 ,y = 2 , z = 3, 则表达式y+=z--/++x 的值是( )。

电子软件开发岗位招聘笔试题及解答(某大型国企)

电子软件开发岗位招聘笔试题及解答(某大型国企)

招聘电子软件开发岗位笔试题及解答(某大型国企)一、单项选择题(本大题有10小题,每小题2分,共20分)1、以下哪种编程语言最适合用于嵌入式电子设备的软件开发?()A. JavaB. CC. PythonD. JavaScript答案:B解析:C语言因其高效、接近硬件的特性,常被用于嵌入式电子设备的软件开发。

Java、Python和JavaScript虽然在其他领域广泛应用,但在嵌入式开发中由于资源限制和性能要求,通常不作为首选。

2、在电子软件开发中,以下哪个术语用来描述系统硬件和软件之间的接口?()A. API(应用程序编程接口)B. SDK(软件开发工具包)C. BIOS(基本输入输出系统)D. HAL(硬件抽象层)答案:D解析:HAL(硬件抽象层)是一种软件层,它提供了一个统一的接口,使得操作系统和应用软件可以与不同的硬件平台进行交互,而无需了解具体的硬件细节。

API、SDK 和BIOS虽然也与软件开发相关,但它们不专门指代硬件和软件之间的接口。

3、题干:在电子软件开发过程中,以下哪种编程语言通常用于实现嵌入式系统?A. PythonB. JavaC. C/C++D. JavaScript答案:C解析:C/C++是一种广泛用于嵌入式系统开发的编程语言。

它具有高性能、低资源消耗和可移植性等优点,因此常用于嵌入式系统编程。

4、题干:以下哪项不是电子软件开发过程中常见的软件设计模式?A. 单例模式B. 工厂模式C. 观察者模式D. 状态模式答案:A解析:单例模式是一种常用的设计模式,用于确保一个类只有一个实例,并提供一个访问它的全局访问点。

工厂模式、观察者模式和状态模式也都是常见的软件设计模式。

而A选项提到的“单例模式”本身就是一种设计模式,所以不是题目要求的“不常见”的设计模式。

5、以下哪个选项是电子软件开发中常用的编程语言?A. JavaB. C++C. PythonD. All of the above答案:D解析:在电子软件开发中,Java、C++和Python都是非常常用的编程语言。

工商银行软件开发笔试题_笔试题目

工商银行软件开发笔试题_笔试题目

工商银行软件开发笔试题
工商银行软件开发笔试题:
一。

单选,20道吧,涉及到软件可行性分析,需求分析,计算机基础知识,软件测试(黑白盒测试),数据结构(基本概念、线性表、链式存储等),sql数据库的查询修改语句,odbc,等等,具体题目记不清了。

有点基础的童鞋,考前花半天时间再复习一下就可以了。

没学过的,放弃吧,一星期也看不完。

还有几道公务员的逻辑推理题,不是很难。

二。

程序填空题,2大段c/c++的程序,每段程序挖5个空让你填。

一段是录入学生成绩和考试科目的(涉及到指针、链式存储等数据结构的知识),一段是数组排序的。

10个空让填的基本上都是for语句的循环条件啦、循环体啦,很晕,因为已设变量就有一堆,一大堆字母搞不清代表什么含义(个人编程水平不高)!~
三。

大选择题,共有3篇,每篇都是一小短文,内设5道选择,类似英语的完形填空~对了,最后一篇很变态,居然是英文逻辑推理,句子都很简单,就是得好好想一下~
题型就是这样,一个小时的时间基本够用,但绝对不是太富裕,因为我那个考场30来个考生吧,没有提前交卷的。

下面谈一下我对这次笔试的看法。

之前听说软开要从工行独立出去了,看来像是真的。

1.笔试通知既非邮件也非短信平台,工行网站上也没有相应消息,而是一个联通的号群发;
2.考号和考场要到现场大门口的黑板上自己找,很不像工行一贯严谨规范的作风;
3.租的是一个破职高的教学楼,上百号人在门口吹风等人家下课,等了半个多小时吧;
对了补充一点,报名是分测试岗和开发岗的,但卷子是一样的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2002年度软件开发人员招聘笔试试题
试题一:基础知识
1、从供选择的答案中,选出应填入下面叙述中_?_内的最确切的解答,把相应编号写在答卷的对应栏内。

假设某计算机具有1M 字节的内存(目前使用的计算机往往具有64M字节以上的内存),并按字节编址,为了能存取该内存各地址的内容,其地址寄存器至少需要二进制_A_位。

为使4字节组成的字能从存储器中一次读出,要求存放在存储器中的字边界对齐,一个字的地址码应_B_。

若存储周期为200NS,且每个周期可访问4个字节,则该存储器带宽为_C_BIT/S。

假如程序员可用的存储空间为4M字节,则程序员所用的地址为_D_,而真正访问内存的地址称为_E_。

供选择的答案:
A:①10 ②16 ③20 ④32
B:①最低两位为00 ②最低两位为10 ③最高两位为00 ④最高两位为10 C:①20M ②40M ③80M ④160M
D:①有效地址②程序地址③逻辑地址④物理地址
E:①指令②物理地址③内存地址④数据地址
2、从供选择的答案中。

选出应填入下面叙述中_?_内的最确切的解答,把相应编号写在答卷的对应栏内。

给定结点的关键字序列(F、B、J、G、E、A、I、D、C、H),对它按字母的字典顺序进行排列,采用不同方法,其最终结果相同。

但中间结果是不同的。

Shell排序的第一趟扫描(步长为5)结果应为_A_。

冒泡排序(大数下沉)的第一趟起泡的效果是_B_3.
快速排序的第一趟结果是_C_。

二路归并排序的第一趟结局是_D_。

供选择的答案
A:①(B、F、G、J、A、D、I、E、H、C)
②(B、F、G、J、A、E、D、I、C、H)
③(A、B、D、C、E、F、I、J、G、H)
④(C、B、D、A、E、F、I、G、J、H)
B:①(A、B、D、C、F、E、I、J、H、G)
②(A、B、D、C、E、F、I、H、G、J)
③(B、F、G、E、A、I、D、C、H、J)
④(B、F、G、J、A、E、D、I、C、H)
C:①(C、B、D、A、F、E、I、J、G、H)
②(C、B、D、A、E、F、I、G、J、H)
③(B、A、D、E、F、G、I、J、H、C)
④(B、C、D、A、E、F、I、J、G、H)
D:①(B、F、G、J、A、E、D、I、G、H)
②(B、A、D、E、F、G、I、J、H、C)
③(A、B、D、C、E、F、I、J、G、H)
④(A、B、D、C、F、E、J、I、H、C)
3、从供选择的答案中,选出应填入下面叙述中_?_内的最确切的解答.把相应编号写在答卷的对应栏内。

进程是操作系统中的一个重要概念。

进程是一个具有一定独立功能的程序在某个数据集合上的一次_A2_。

进程是一个_B3_的概念,而程序是一个_C3_的概念。

进程的最基本状态有_D4_。

在一个单处理机中,若有6个用户进程,在非管态的某一时刻,处于就绪状态的用户进程最多有_E5_个。

供选择的答案
A:①单独操作②关联操作③运行活动④并发活动
B:①静态②动态③逻辑④物理
C:①物理②逻辑③动态④静态
D:①就绪、运行、隐蔽②停止、就绪、运行
③运行、就绪、阻塞④就绪、撤消、运行
E:①5 ②6 ③1 ④4
4、软件设计中划分模块的一个准则是_A2_。

两个模块之间的耦合方式中,_B3_耦合的耦合度最高,_C4_耦合的耦合度最低。

一个模块内部的内聚种类中_D4_内聚的内聚度最高,_E1_内聚的内聚度最低。

供选择的答案
A:①低内聚低耦合②低内聚高耦合③高内聚低耦合④高内聚高耦合
B:①数据②非直接③控制④内容
C:①数据②非直接③控制④内容
D:①偶然②逻辑③功能④过程
E:①偶然②逻辑③功能④过程
5、从供选择的答案中选出应填入下面叙述中_?_内的最确切的解答,把相应编号写在答卷的对应栏内。

最常用的一种基本数据模型是关系数据模型,它用统一的_A 1_结构来表示实体及实体之间的联系。

关系数据库的数据操作语言(DML)主要包括_B2_两类操作。

关系运算以关系代数为理论基础,关系代数的最基本操作是并、差、笛卡尔积、_C4_。

用R∣×∣S表示关系R和关系S的_D1_。

设关系R和关系S图示如下:
R: A B C S: B C D T: A B C D
则关系T是关系R和关系S_E _的结果。

供选择的答案
A:①树②网络③图④二维表
B:①插入和删除②检索和更新③查询和编辑④统计和修改
C:①投影、联接②联接、选择③选择、投影④交、选择
D:①联接②笛卡尔积③日联接④自然联接
E:①自然联接②θ联接③笛卡尔积④并
试题二:程序设计
用你所熟悉的任意一种程序语言,编写一个完整的过程,将一个字符串插入到另一个字符串的某个位置后面(例如:将“abc”插入到“abcdef”的第三个字符位置后面,结果为“abcabcdef”)。

编写程序时,请在必要的地方加以注释(注:不能用该程序语言的内置函数或过程)。

用你所熟悉的任意一种程序语言,编写一个完整的过程,完成从一个给定的完整的文件路径
(如“C:\My Documents\Software Test 1.00.doc”)中,析取文件名,扩展名和文件所处目录的功能,编写程序时,请在必要的地方加以注释(注:不能用该程序语言的内置函数或过程)。

试题三:数据库设计
下面的表有问题吗?如果有,如何改进?
分成二个表,第一个表有以下字段:城市和街道,以城市作为主键;第二个表:街道和邮政编码,以街道为主键.通过街道与第一个表的街道相关联
2、假设有以下的两个表:
Cus_A
*主键
表Cus_A和表Cus_B的结构完全相同,表Cus_A和表Cus_B中既存在ID相同的记录,也存在ID不同的记录。

现要求将ID只存在于表Cus_A中而不存在于表Cus_B中的记录全部插入到Cus_B表中,并用表Cus_A中的记录更新表Cus_B中相同的ID的记录,请写出完成这一功能的存储过程。

Create or procedure test is
Declare id1 CusA.id%type;
Begin
Select id into id1 from CusA a,CusB b where a.id=b.id;
3、某公司正在开发一个档案管理系统,要求在关系数据库中实现和Windows文件系统完全一致的树状文件目录。

为了实现这一目录结构,至少需求哪些表?请详细描述这些表的用途和结构(如有必要,可用图表进行描述)。

最后,请用伪编码(或自然语言)描述按树状结构遍历所有档案的算法。

试题四:系统设计
简述“面向对象”的概念,并设计一个学校选课系统的对象模型。

简述“软件系统的两层和多层体系结构”的概念(如有必要,可用图表进行描述),并指出两者的主要区别。

3、简述一个软件工程的主要步骤,并指出每个步骤的明确目标及实施办法。

最后分析哪些
是关键步骤。

试题五:综合
你认为在团队开发中,你能发挥自己的能力吗?为什么?当个人意见与主管出现矛盾时,你用什么方法解决?。

相关文档
最新文档