威盛公司软件C++工程师笔试题

2024-04-15

威盛公司软件C++工程师笔试题(通用3篇)

篇1:威盛公司软件C++工程师笔试题

威盛公司软件C++工程师笔试题

1.How good do you see yours programming skills?Please circle your answers

C: Fair/Good/Excellent

C++: Fair/Good/Excellent

2.Please estimate your programming experince:

How many lines of code are your biggest C Program ever written excluding thestandard linked library?

How many lines of code are your biggest C++ program ever written excluding the standard linked library?

3.Please explain the following terms

Data Encapsulation

Inheritance

Polymorphism

4.What is a virtual base class?How do you declare such a class?How would you use it in a design?

5.What is a template or container class?How do you declare such a class?

6.Which are the access control levels for C++ language?

7.What is RTTI?How do you achieve RTTI in your design?

8.What are the major differences between static and non-static member functions?

9.How do you call a regular member function from a static member function?

Please use psendo-code to provide your answer

10.How do you declare/define a type of pointer to a class member function?

Please use psendo-code to provide your answer

11.Please explain the following tyoes:

Here is a short lise of combinations and their meanings:

1.Reference-Can change the referenced object

2.Const-Reference

3.Const-Pointer-

4.Pointer-Const-

5.Const-Pointer-Const-

CFoo Instance

CFoo &ReferenceToInstance=Instance; //1

const CFoo &ConstReferenceToInstance=Instance; //2

const CFoo *pConstPointer=&Instance; //3

CFoo *const pPointerConst=&Instance; //4

const CF00 *const pPointerConst=&Instance; //5

12.What are top-down and bottom-up approach?How do you usually use them?

13.Please use pseudo-code to design a set of stack operations with template

14.Please use pseudo-code to design a set of double linked list operations with template

Optional Questions:(for extra credits)

15.Please write a unix makefile for Question13

16.Please explain these common sections:text,data,bss

篇2:威盛公司软件C++工程师笔试题

1.#include #define ADD(p) {p++;(*p)++;}Add(int *p) {p++;(*p)++;}int a[]={0,1,2};int main{int *p=a;ADD(p)ADD(p)printf(“%d,%d,%d/n”,a[0],a[1],a[2]);p=a;Add(p);Add(p);printf(“%d,%d,%d/n”,a[0],a[1],a[2]);}输出多少?

2.:说明下面程序的作用,

func(char*a,char*b){while(*a++=*b++);return;}

3.:说明下面的的表达有没有不同,如果不同,请说明不同在哪里,

char* s1=“hello”;

char s2[]=“world”;

4.简述auto,static,register,extern四种存储类型的区别

5.:int count=0;int x=int main(){while(x){count++;x=x&(x-1);}return count;}问输出返回的count值。

6.:8个台阶,上台阶的人一次最多上3个台阶,问上这个8个台阶有多少种方法?

篇3:某公司软件测试工程师笔试题

1、测试人员在测试过程中发现一处问题,如果问题影响不大,而自己又可以修改,应立即将此问题正确修改,以加快、提高开发的进程。(×)

2、软件测试就是为了验证软件功能实现的是否正确,是否完成既定目标的活动,所以软件测试在软件工程的后期才开始具体的工作。(×)

3、发现错误多的模块,残留在模块中的错误也多。(√)(初级)

4、功能测试是系统测试的主要内容,检查系统的功能、性能是否与需求规格说明相同。(√)(中级)

5、测试只要做到语句覆盖和分支覆盖,就可以发现程序中的所有错误。(X)

二、选择题(每题2分20)

1、选出属于黑盒测试方法的选项(ABC)

A、测试用例覆盖

B、输入覆盖

C、输出覆盖

D、分支覆盖

E、语句覆盖

F、条件覆盖

2、软件质量管理(QM)应有质量保证(QA)和质量控制(QC)组成,下面的选项属于QC得是:(ABC)

A、测试

B、跟踪

C、监督

D、制定计划

E、需求审查

F、程序代码审查

3、使用软件测试工具的目的:(ABC)

A、帮助测试寻找问题

B、协助问题的诊断

C、节省测试时间

D、提高Bug的发现率

E、更好的控制缺陷提高软件质量

F、更好的协助开发人员

4、典型的瀑布模型的四个阶段是:(ABCD)

A、分析

B、设计

C、编码

D、测试

E、需求调研

F、实施

5、进行软件质量管理的重要性有:(ABCD)

A、维护降低成本

B、法律上的要求

C、市场竞争的需要

D、质量标准化的趋势

E、软件工程的需要

F、CMM过程的一部分

G、方便与客户进一步沟通为后期的实施打好基础

6、以测试的形态分测试可以分为:(ABC)

A、建构性测试

B、系统测试

C、专项测试

D、单元测试

E、组件测试

F、集成测试

7、编写测试计划的目的是:(ABC)

A、使测试工作顺利进行

B、使项目参与人员沟通更舒畅

C、使测试工作更加系统化

D、软件工程以及软件过程的需要

E、软件过程规范化的要求

F、控制软件质量

8、依存关系有4种分别是:(ABCD)【高级】

A、开始-结束B、开始-开始C、结束-开始

D、结束-结束E、开始-实施-结束F、结束-审核-开始

三、问答题

1、界面测试题及设计题,

请找出下面界面中所存在的问题并分别列出;用黑盒测试的任何一种方法设计出此登陆窗体的测试用例。(中级)(6分)

答:1、窗体的标题栏中为空,没有给出标题。

2、用户名和密码控件的`字体不一致并且没有对齐。

3、文本框的大小不一致没有对其。

4、确定和取消按钮控件的大小不一致。

2、黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点!(中级)(5分)

答:黑盒测试的优点有:

1)比较简单,不需要了解程序内部的代码及实现;

2)与软件的内部实现无关;

3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;

4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;

5)在做软件自动化测试时较为方便。

黑盒测试的缺点有:

1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;

2)自动化测试的复用性较低。

白盒测试的优点有:

帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐藏的问题。

白盒测试的缺点有:

1)程序运行会有很多不同的路径,不可能测试所有的运行路径;

2)测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功能需求;

3)系统庞大时,测试开销会非常大。

5、根据自己的理解回答什么是软件测试,软件测试分为哪几个阶段。(初级)(5分)

答:软件测试是一个为了寻找软件中的错误而运行软件的过程,一个成功的测试是指找到了迄今为止尚未发现的错误的测试。

软件测试一般分为单元测试、集成测试和系统测试。

3、根据自己的理解什么是测试用例和测试规程,设计一个测试用例应当从哪几方面考虑?(中级)(10分)

答:狭义的讲,一个测试用例就是测试人员用以测试被测软件的某个特性或特性组合的一组数据。这组数据可能是从用户处得来的实际的一组数据,也可能是测试人员专门设计出来的测试软件某些功能的一组数据。

测试规程就是详细的对测试用例设计方法、测试方法、测试工具、测试环境和测试数据进行描述的文档,还可以包括能把某个或某一组测试用例应用到被测软件上完成某项测试的一系列的操作步骤。

设计测试用例应当从以下几方面考虑:边界值,等价类划分,有效/无效值等。

4、什么是软件质量保证?软件质量保证人员与开发人员的关系如何?(高级)(10分)

答:软件质量保证就是通过确保软件过程的质量,来保证软件产品的质量。

软件质量保证人员和开发人员之间具有管理上的严格的独立性,两个小组的管理员都不能越权管理另一组,但都可以向更高层的管理者汇报软件开发中的问题

5、在您以往的工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量的软件缺陷(Bug)记录?(初级)(6分)

上一篇:2010廉政建设工作总结报告下一篇:给业务精英的颁奖词