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

软件开发 1621
今天给各位分享软件开发笔试题及答案的知识,其中也会对软件工程师笔试题库及答案进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、.net软件工程师笔试题和面试题答案目

今天给各位分享软件开发笔试题及答案的知识,其中也会对软件工程师笔试题库及答案进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

.net软件工程师笔试题和面试题答案目

说明:

1. 本试题分可选题和必选题两部分。必选题需要根据题目要求回答。

2. 本试题考试时间为 0.5 小时。

3. 本试题完成后,请标明你的姓名以及联系方式(包括:Email、联系电话)。

注意事项:

1、在规定时间内自行选题(在可选题部分中),选题数目不能少于2个,难度不限,编程语言不限(除非题目中有特别说明)。

2、尽可能用代码段或函数完成,或自然语言来描述解题方法。

3、评分标准跟所选题目的数量和完成度无关,请尽可能展示自己的编程能力、思路、经验和风格。

可选题部分:

(1) 请使用目录树遍历的方法统计出指定逻辑驱动器的目录总数及文件总数,并显示硬盘空间浪费的百分比

类别:系统类

难度:中级

(2) 列出局域网中的所有工作组和计算机名,并可显示每一个计算机的共享目录

类别:系统类

难度:高级

(3) 写一个类似OICQ点对点消息发送软件,仅实现发送和接收的功能即可

类别:网络编程类

难度:高级

(4) 为DataGrid(WinForm)增加ComboBox样式的数据列

类别:数据库编程类

难度:中级

(5) 一维数组iArray[10],类型为int。请使用选择排序算法对其排序,并输出结果。

类别:数据算法

难度:初级

(6) 请新建一个类(名称为ClassA),该类必须含有三个属性:姓名(字符串),性别(布尔值),年龄(数值)。

用该类建立一个链表,该链表有以下算法:创建、添加、插入、删除和查找,算法内不用

考虑内存的分配与释放

类别:数据结构

难度:中级

Public Class ClassA{

Public string name;

Public boolean sex;

Public int age;

}

(7) 在上题的基础上,实现以下两个功能:

a. 保存该链表为二进制文件test.lib(存放在本题目路径之下)

b. 读取生成的二进制文件到链表中。

类别:数据结构

难度:中级

(8) 你所知道有哪些操作平台,谈谈你对他们的见解

类别:其它类

难度:无

(9) 你所知道有哪些编程语言,谈谈你对他们的看法,你使用过哪些语言,熟练程度

如何,编写过什么样的程序

类别:其它类

难度:无

(10) 请用VBScript或JavaScript语言中任何一种,与CSS结合,编写出移动Layer的例子,具体效果与Windows窗体类似。

类别:Web

难度:中级

必选题部分(必须用VS2003开发):

(1) C#回答题:请描述抽象类、接口、结构三者的区别:

抽象类当中的属性和方法不能被其子类重写,接口只定义其中的属性和方法,其方法的实现部分必须在其继承的子类中实现,结构和类比较类似,也有其属性和方法,但不能被继承和实例化.

(2) C#编程题:在WinForm 中实现类似于Windows 资源管理器的功能,左边有目录树,点击目录树,在右边显示该目录下的所有文件。查看方式分:大图标、小图标、列表、详细资料等。

(3) 写一个简单的存储过程或触发器,要求能正确运行(数据库采用Oracle,自建测试表)

Create table test

(id int primary key,

Name varchar2(10) not null,

Address varchar2(50),

Tel varchar2(18)

);

Create or replace procedure InsertTest as

Declare IDN test.id%type;

Declare VName test.name%type;

Declare VAddress test.address%type;

Declare VTel test.tel%type;

Begin

Select nvl(decode(max(id),0,1,max(id)),1) + 1 into IDN

End

When

4 更多相关文章推荐参考:

安捷伦笔试真题

中兴数据库笔试真题

工商银行历年考试真题

哪里有java笔试题

java面试不光有面试也会有笔试,整理了一些java笔试题及答案分享给大家,准备或将要参加java面试的朋友可以仔细阅读,争取一次通过,进去自己心仪的企业工作。想看更多面试问题请关注WeiXin工纵浩“浙江优就业”!

一、九道选择题

1.Java程序的种类有(BCD )

A.类(Class) B.Applet C.Application D.Servlet

2.下列说法正确的有( BCD)

A. 环境变量可在编译source code时指定

B. 在编译程序时,所能指定的环境变量不包括class path

C. javac一次可同时编译数个Java源文件

D. javac.exe能指定编译结果要置于哪个目录(directory)

3.下列标识符不合法的有( ACD)

A.new B.$Usdollars C.1234 D.car.taxi

4.下列说法错误的有( BCD)

A. 数组是一种对象

B. 数组属于一种原生类

C. int number=={31,23,33,43,35,63}

D. 数组的大小可以任意改变

5.不能用来修饰interface的有(ACD )

A.private B.public C.protected D.static

6.下列正确的有(ACD )

A. call by value不会改变实际参数的数值

B. call by reference能改变实际参数的参考地址

C. call by reference不能改变实际参数的参考地址

D. call by reference能改变实际参数的内容

7.下列说法错误的有( ACD)

A. 在类方法中可用this来调用本类的类方法

B. 在类方法中调用本类的类方法时可直接调用

C. 在类方法中只能调用本类中的类方法

D. 在类方法中绝对不能调用实例方法

8.下列说法错误的有(ABC )

A. Java面向对象语言容许单独的过程与函数存在

B. Java面向对象语言容许单独的方法存在

C. Java语言中的方法属于类中的成员(member)

D. Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同

9.下列说法错误的有(BCD )

A. 能被java.exe成功运行的java class文件必须有main方法

B. J2SDK就是Java API

C. Appletviewer.exe可利用jar选项运行.jar文件

D. 能被Appletviewer成功运行的java class文件必须有main方法

二、六道简答题

1、在java中如果声明一个类为final,表示什么意思?

答:final是最终的意思,final可用于定义变量、方法和类但含义不同,声明为final的类不能被继承。

2、父类的构造方法是否可以被子类覆盖(重写)?

答:父类的构造方法不可以被子类覆盖,因为父类和子类的类名是不可能一样的。

3、请讲述String 和StringBuffer的区别。

答:String 类所定义的对象是用于存放“长度固定”的字符串。

StringBuffer类所定义的对象是用于存放“长度可变动”的字符串。

4、如果有两个类A、B(注意不是接口),你想同时使用这两个类的功能,那么你会如何编写这个C类呢?

答:因为类A、B不是接口,所以是不可以直接继承的,但可以将A、B类定义成父子类,那么C类就能实现A、B类的功能了。假如A为B的父类,B为C的父类,此时C就能实现A、B的功能。

5、结合Java视频Lesson5(多线程),分析sleep()和wait()方法的区别。

答: Sleeping睡眠的意思 : sleep() 方法用来暂时中止执行的线程。在睡眠后,线程将进入就绪状态。

waiting等待的意思: 如果调用了 wait() 方法,线程将处于等待状态。用于在两个或多个线程并发运行时。

6、谈谈你对抽象类和接口的理解。

答:定义抽象类的目的是提供可由其子类共享的一般形式、子类可以根据自身需要扩展抽象类、抽象类不能实例化、抽象方法没有函数体、抽象方法必须在子类中给出具体实现。他使用extends来继承。

接口:一个接口允许一个类从几个接口继承而来,Java 程序一次只能继承一个类但可以实现几个接口,接口不能有任何具体的方法,接口也可用来定义可由类使用的一组常量。其实现方式是interface来实现。

1、HashMap和Hashtable的区别。

都属于Map接口的类,实现了将惟一键映射到特定的值上。HashMap 类没有分类或者排序。它允许一个null 键和多个null 值。Hashtable 类似于HashMap,但是不允许null 键和null 值。它也比HashMap 慢,因为它是同步的,是线程安全的。

2、sleep() 和wait() 有什么区别?

sleep是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。调用sleep不会释放对象锁。wait是Object类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出notify方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。

3、Collection 和Collections的区别。

Collections是个java.util下的类,它包含有各种有关集合操作的静态方法。

Collection是个java.util下的接口,它是各种集合结构的父接口。

4、什么时候用assert.

assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为true;如果该值为false,说明程序已经处于不正确的状态下,系统将给出警告或退出。一般来说,assertion用于保证程序最基本、关键的正确性。assertion检查通常在开发和测试时开启。为了提高性能,在软件发布后,assertion检查通常是关闭的。

5、和的区别。

是两个数相与,是位运算符,是布尔逻辑运算符,连接两个条件表达式的,两个条件表达式都为真时,整个才为真

6、谈谈final, finally, finalize的区别。

final:修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载。

finally:在异常处理时提供finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的catch 子句就会执行,然后控制就会进入finally 块(如果有的话)。

finalize:方法名。Java 技术允许使用finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在Object 类中定义的,因此所有的类都继承了它。子类覆盖finalize() 方法以整理系统资源或者执行其他清理工作。finalize() 方法是在垃圾收集器删除对象之前对这个对象调用的。

7、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?

匿名的内部类是没有名字的内部类。不能继承其它类,但一个内部类可以作为一个接口,由另一个内部类实现。

8、。Math.round(11.5)等於多少? Math.round(-11.5)等於多少?

Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;因为返回最接近参数的long.通过加上1/2 将该结果舍入为整数,取结果的基数并将其强制转换为long 类型。换句话说,结果等于以下表达式的值:(long)Math.floor(a + 0.5d)

9、Static Nested Class 和Inner Class的不同,说得越多越好(面试题有的很笼统)。

Static nested class(嵌套类)是将内部类声明为static.普通内部类对象隐式地保存了一个引用,指向创建它的外围类对象,不能有static数据和static字段。嵌套类意味着:1 要创建嵌套类的对象,并不需要其外围类的对象;2不能从嵌套类的对象中访问非静态的外围类的对象。

10、ArrayList和Vector的区别。

1同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的2数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半。

华为软件工程笔试题和面试题答案附答案

写一个程序, 要求功能:求出用1,2,5这三个数不同个数组合的和为100的组合个数。

如:100个1是一个组合,5个1加19个5是一个组合。。。。 请用C++语言写。

答案:最容易想到的算法是:设x是1的个数,y是2的个数,z是5的个数,number是组合数注意到0=x=100,0=y=50,0=z=20,所以可以编程为:number=0;for (x=0; x=100; x++)for (y=0; y=50; y++)for (z=0; z=20; z++)if ((x+2*y+5*z)==100)number++;coutnumberendl;

上面这个程序一共要循环100*50*20次,效率实在是太低了事实上,这个题目是一道明显的数学问题,而不是单纯的编程问题。我的解法如下:因为x+2y+5z=100所以x+2y=100-5z,且z=20 x=100 y=50所以(x+2y)=100,且(x+5z)是偶数对z作循环,求x的可能值如下:z=0, x=100, 98, 96, ... 0z=1, x=95, 93, ..., 1z=2, x=90, 88, ..., 0z=3, x=85, 83, ..., 1z=4, x=80, 78, ..., 0......z=19, x=5, 3, 1z=20, x=0因此,组合总数为100以内的偶数+95以内的奇数+90以内的偶数+...+5以内的奇数+1,即为:(51+48)+(46+43)+(41+38)+(36+33)+(31+28)+(26+23)+(21+18)+(16+13)+(11+8)+(6+3)+1某个偶数m以内的偶数个数(包括0)可以表示为m/2+1=(m+2)/2某个奇数m以内的奇数个数也可以表示为(m+2)/2所以,求总的组合次数可以编程为:number=0;for (int m=0;m=100;m+=5){number+=(m+2)/2;}coutnumberendl;这个程序,只需要循环21次, 两个变量,就可以得到答案,比上面的那个程序高效了许多倍----

只是因为作了一些简单的数学分析这再一次证明了:计算机程序=数据结构+算法,而且算法是程序的灵魂,对任何工程问题,当用软件来实现时,必须选取满足当前的资源限制,用户需求限制,开发时间限制等种种限制条件下的最优算法。而绝不能一拿到手,就立刻用最容易想到的算法编出一个程序了事

【华为硬件笔试题1】

一 选择 13个题目,没有全部抄下来,涉及的课程有电路,模拟电路,数字电路,信号与系统,微机原理,网络,数字信号处理

1.微分电路 2.CISC,RISC 3.数据链路层

二 填空 10个题目,没有全部抄下来,涉及的课程有电路,模拟电路,数字电路,信号与系统,微机原理,网络,数字信号处理 有关于 1.TIC6000 DSP 2.二极管 3.RISC 4.IIR

三 简答 1.x(t)的傅立叶变换为X(jw)=$(w)+$(w-PI)+$(w-5) h(t)=u(t)-u(t-2) 问: (1),x(t)是周期的吗? (2),x(t)*h(t)是周期的吗? (3),两个非周期的信号卷积后可周期吗? 2.简述分组交换的特点和不足

四 分析设计 1.波形变换题目 从正弦波-方波-锯齿波-方波,设计电路 2.74161计数器组成计数电路,分析几进制的 3.用D触发器构成2分频电路 4.判断MCS-51单片机的指令正确还是错误,并指出错误原因 (1) MUL R0,R1 (2) MOV A,@R7 (3) MOV A,#3000H (4) MOVC @A+DPTR,A (5) LJMP #1000H () 5.MCS-51单片机中,采用12Mhz时钟,定时器T0采用模式1(16位计数器),请问在下面程序中,p1.0的输出频率 MOV TMOD,#01H SETB TR0 LOOP:MOV TH0,#0B1H MOV TL0,#0E0H LOOP1:JNB TF0,LOOP1 CLR TR0 CPL P1.0 SJMP LOOP

【华为硬件笔试题2】

全都是几本模电数电信号单片机题目

1.用与非门等设计全加法器

2.给出两个门电路让你分析异同

3.名词:sram,ssram,sdram

4.信号与系统:在时域与频域关系

5.信号与系统:和4题差不多

6.晶体振荡器,好像是给出振荡频率让你求周期(应该是单片机的,12分之一周期.. ..)

7.串行通信与同步通信异同,特点,比较

8.RS232c高电平脉冲对应的TTL逻辑是?(负逻辑?)

9.延时问题,判错

10.史密斯特电路,求回差电压

11.VCO是什么,什么参数(压控振荡器?)

12. 用D触发器做个二分颦的电路.又问什么是状态图

13. 什么耐奎斯特定律,怎么由模拟信号转为数字信号

14. 用D触发器做个4进制的计数

15.那种排序方法最快?

【华为硬件笔试题3】

第一部分是:先给你一个 字符与文字对应的表,然后再给你几个文字选出对应的字符组合。 很简单,考察你的速度的,动作要快,应该直接在答题卡上图写答案。 第二部分就是考察智力的,就是找图形数字的规律,然后让你添一个空 还有一些简单的计算,需要速度快,时间有点紧。第三部分就是 一些你日常遇到的情况,你如何解决,这个没有正确答案。接下来就是专业考试了,不同职位内容也不同。ASIC是数字电路的知识(还有点FPGA), 大致如下:1.简述数据在多时钟域中跨时钟域的几种处理方法。 2.写一个简单逻辑电路的输出,并化简。 3.用硬件描述语言(Verilog HDL或VHDL)写出FIFO控制器的程序。 4.用一个3-8译码器和一个或门 组成一个三人表决器 两个人或者两个以上输入1时,输出为1。 5.用于非门和非门 设计一个两位二进制数的平方器。 6.啥是零点漂移,在多级耦合的运放电路中的危害是啥,给出一个抑制零点漂移的电路,计算输出表达式。 7.用逻辑电路实现一个三位二进制数对3取模的电路。 8.画出RS触发器的电路图。 9.设计一个监测连续3个1的序列监测器,当输入3个或者多于3个1时,输出为1,画出原始状态图,状态表,并化简。

1 2 3 4 5 6 7

急需程序员笔试题,附带答案

一、选择题(每题1分,共20分)

1. 下列那种语言是面向对象的(C)

A. C B. PASCAL C. C++ D. FORTRAN77

2.在 Windows9x 下,可以进入 MS-D0S 方式。当在 DOS 提示符下键入 (B ) 命令后,

系统将退出 MS-DOS方式,返回到 WIndows 方式。

A. CLOSE B. EXIT C. QUIT D. RETURN

3.下面哪些是面向对象的基本特性:(A,B,C )

A 多态 B 继承 C 封装 D 接口

4.在C++中经常要进行异常处理,下面哪些是异常处理常用到的关键词:(A,B,C)

A try B catch C throw D break E contiue

5.数据库技术中的“脏数据',是指(D)的数据。

A.错误 B.回返 C.未提交 D.未提交的随后又被撤消

6.TCP/IP是一种(A,B)

A.标准 B.协议 C.语言 D.算法

7. 下面有关计算机操作系统的叙述中,不正确的是( )

A 操作系统属于系统软件

B 操作系统只负责管理内存储器,而不管理外存储器

C UNIX 是一种操作系统

D 计算机的处理器、内存等硬件资源也由操作系统管理

8.微机上操作系统的作用是( D)

A 解释执行源程序 B 编译源程序

C 进行编码转换 D 控制和管理系统资源

9.下列存储器中存取速度最快的是(A )

A 内存 B 硬盘 C 光盘 D 软盘

10.在计算机中,—个字节是由多少个二进制位组成的( )

A. 4 B. 8 C. 16 D. 24

11. 存储16×16点阵的一个汉字信息,需要的字节数为( )

A 32 B 64 C 128 D 256

12. 以下选项中合法的字符常量是(C)

A."B" B. '\010' C. 68 D. D

13. 假定x和y为double型,则表达式x=2,y=x+3/2的值是()

A. 3.500000 B. 3 C. 2.000000 D. 3.000000

14. 以下合法的赋值语句是()

A. x=y=100 B. d--; C. x+y; D. c=int(a+b);

15. 设正x、y均为整型变量,且x=10 y=3,则以下语句

pprintf("%d,%d\n",x--,--y); 的输出结果是()

A.10,3 B. 9,3 C. 9,2 D.10,2

16. x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是()

A .INPUT x、y、z; B. scanf("%d%d%d",x,y,z);

C. scanf("%d%d%d",x,y,z); D. read("%d%d%d",x,y,z);

17.以下数组定义中不正确的是()

A) int a[2][3]; B) int b[][3]={0,1,2,3};

C) int c[100][100]={0}; D) int d[3][]={{1,2},{1,2,3},{1,2,3,4}};

18. 以下程序的输出结果是()

main()

{

int a[4][4]={{1,3,5},{2,4,6},{3,5,7}};

printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1],a[3][0];

}

A) 0650 B) 1470 C) 5430 D) 输出值不定

19 以下程序的输出结果是()

main()

{

char st[20]= "hello\0\t\\\";

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

}

A) 9 9 B) 5 20 C) 13 20 D) 20 20

20. 当调用Windows API函数InvalidateRect,将会产生什么消息()

A:WM_PAINT B:WM_CREATE

C:WM_NCHITTEST D:WM_SETFOCUS

二、填空题(每题3分,共30分)

1.请列举当前一些当前流行的数据库引擎__________

2. 为了将当前盘当前目录中的所有文本文件(扩展名为.TXT)的内容打印输出,正确

的单条DOS命令为______。

3. 计算机网络分为局域网和广域网,因特网属于 广域网。

4. 设y是int型变量,请写出判断y为奇效的关系表达_______。

5. 设有以下程序:

main()

{ int n1,n2;

scanf("%d",n2);

while(n2!=0)

{ n1=n2%10;

n2=n2/10;

printf("%d",n1);

}

}

程序运行后,如果从键盘上输入1298;则输出结果为____。

6.以下程序运行后的输出结果是______。

main()

{ char s[ ]="9876",*p;

for ( p=s ; pbr}

7.以下函数的功能是:求x的y次方,请填空。

double fun( double x, int y)

{ int i;

double z;

for(i=1, z=x; ibrreturn z;

}

8.以下程序段打开文件后,先利用fseek函数将文件位置指针定位在文件末尾,然后调

用ftell函数返回当前文件位置指针的具体位置,从而确定文件长度,请填空。

FILE *myf; ling f1;

myf= ______("test.t","rb");

fseek(myf,0,SEEK_END); f1=ftel(myf);

fclose(myf);

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

9. 以下程序输出的最后一个值是______。

int ff(int n)

{ static int f=l;

f=f*n;

return f;

}

main()

{ int i;

for(I=1;I=5;I++ printf("%d\n",ff(i));

)

10. 以下程序运行后的输出结果是_____。

main()

{ int i=10, j=0;

do

{ j=j+i; i-;

while(i2);

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

}

三、判断题(每题2分,共20分)

1:动态链结库不能静态调用。

2:UDP是面向无连接的网络连接

3:ASP是一种数据库引擎

4:队列是先进后出。

5:Weblogic是分布式应用服务器。

6:TCP,UDP都是传输层的协议。

7: 两个线程不能共存于同一地址空间

8: JAVA是一种跨平台的开发工具

9.在WINDOWS操作系统中对外设是以文件的方式进行管理

10. 虚拟内存实际是创建在硬盘上的

四、问答题(每题10分,共30分)

1. 写出从数据库表Custom中查询No、Name、Num1、Num2并将Name以姓名显示、计算出

的和以总和显示的SQL。

Select No、Name、Num1、Num2 from custom;

2. 何为“事务处理”,谈谈你对它的理解。

3. 常用的数据结构有哪些?请枚举一些。(不少于5个)

4. 什么是OOP?什么是类?请对比类和对象实例之间的关系。

5. 有一组数字(3,10,6,8,98,22),请编程排序(升降序皆可),语言不限,算法不限,但须注明是何种算法。

wf11119@sina.com

关于软件开发笔试题及答案和软件工程师笔试题库及答案的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

扫码二维码