A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  对于软件工程师,不太重视学历,但并不是对学历没有要求,重点关注项目的经验和学习知识的能力,能否利用软件工程专业知识来解决问题,根据岗位不同,对软件工程师的要求也有所不同。接下来传智播客搜集了软件工程师笔试题及答案,仅供大家参考。
  软件工程师笔试题及答案一
  一、判断题
  1、软件测试就是为了验证软件功能实现的是否正确,是否完成既定目标的活动,所以软件测试在软件工程的后期才开始具体的工作。(初级)( × )
  2、发现错误多的模块,残留在模块中的错误也多。( √ ) (初级)
  3、测试人员在测试过程中发现一处问题,如果问题影响不大,而自己又可以修改,应立即将此问题正确修改,以加快、提高开发的进程。( × )(初级)
  4、单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测试。( √ )(中级)
  5、功能测试是系统测试的主要内容,检查系统的功能、性能是否与需求规格说明相同。( √ )(中级)
  6、软件质量管理即QM由QA和QC构成,软件测试属于QC的核心工作内容。(√)(高级)
  7、软件测试只能发现错误,但不能保证测试后的软件没有错误。(√)
  8、软件就是程序。(X)
  9、测试只要做到语句覆盖和分支覆盖,就可以发现程序中的所有错误。(X)
  10、I18N测试是指对产品做出具有国际性的规划,而L10N测试则是指对软件做出符合本地需求更改工作。(√)【高级】
  二、选择题
  1、 进行软件质量管理的重要性有:(ABCD)【中级】
  A、维护降低成本 B、法律上的要求 C、市场竞争的需要 D、质量标准化的趋势 E、软件工程的需要 F、CMM过程的一部分 G、方便与客户进一步沟通为后期的实施打好基础
  2、以测试的形态分测试可以分为:(ABC)【中级】
  A、建构性测试 B、系统测试 C、专项测试 D、单元测试 E、组件测试 F、集成测试
  3、选出属于黑盒测试方法的选项(ABC)【初级】
  A、测试用例覆盖 B、输入覆盖 C、输出覆盖 D、分支覆盖 E、语句覆盖 F、条件覆盖
  4、编写测试计划的目的是:(ABC)【中级】
  A、使测试工作顺利进行 B、使项目参与人员沟通更舒畅 C、使测试工作更加系统化 D、软件工程以及软件过程的需要 E、软件过程规范化的要求 F、控制软件质量
  5、依存关系有4种,分别是:(ABCD)【高级】
  A、开始-结束 B、开始-开始 C、结束-开始 D、结束-结束 E、开始-实施-结束 F、结束-审核-开始
  6、软件质量管理(QM)应有质量保证(QA)和质量控制(QC)组成,下面的选项属于QC得是:(ABC)【高级】
  A、测试 B、跟踪 C、监督 D、制定计划 E、需求审查 F、程序代码审查
  7、实施缺陷跟踪的目的是:(ABCD)【中级】
  A、软件质量无法控制 B、问题无法量化 C、重复问题接连产生 D、解决问题的知识无法保留 E、确保缺陷得到解决 F、使问题形成完整的闭环处理
  8、使用软件测试工具的目的:(ABC)【中级】
  A、帮助测试寻找问题 B、协助问题的诊断 C、节省测试时间 D、提高Bug的发现率 E、更好的控制缺陷提高软件质量 F、更好的协助开发人员
  9、典型的瀑布模型的四个阶段是:(ABCD)【高级】
  A、分析 B、设计 C、编码 D、测试 E、需求调研 F、实施
  10、PSP是指个人软件过程 ,是一种可用于( A )、( B )和( C )个人软件工作方式的自我改善过程。【高级】
  A、控制 B、管理 C、改进 D、高效 E、充分 F、适宜
  三、问答题
  1、 测试人员在软件开发过程中的任务是什么?(初级)
  答:1、寻找Bug;
  2、避免软件开发过程中的缺陷;
  3、衡量软件的品质;
  4、关注用户的需求。
  总的目标是:确保软件的质量。
  2、在您以往的工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量的软件缺陷(Bug)记录?(初级)
  答:一条Bug记录最基本应包含:编号、Bug所属模块、Bug描述、Bug级别、发现日期、发现人、修改日期、修改人、修改方法、回归结果等等;要有效的发现Bug需参考需求以及详细设计等前期文档设计出高效的测试用例,然后严格执行测试用例,对发现的问题要充分确认肯定,然后再向外发布如此才能提高提交Bug的质量。
  3、黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点!(中级)
  答:黑盒测试的优点有:
  1)比较简单,不需要了解程序内部的代码及实现;
  2)与软件的内部实现无关;
  3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;
  4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;
  5)在做软件自动化测试时较为方便。
  黑盒测试的缺点有:
  1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;
  2)自动化测试的复用性较低。
  白盒测试的优点有:帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐藏的问题。
  白盒测试的缺点有:
  1)程序运行会有很多不同的路径,不可能测试所有的运行路径;
  2)测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功能需求;
  3)系统庞大时,测试开销会非常大。
  4、根据自己的理解回答什么是软件测试,软件测试分为哪几个阶段。(初级)
  答:软件测试是一个为了寻找软件中的错误而运行软件的过程,一个成功的测试是指找到了迄今为止尚未发现的错误的测试。
  软件测试一般分为单元测试、集成测试和系统测试。
  5、根据自己的理解什么是测试用例和测试规程,设计一个测试用例应当从哪几方面考虑?(中级)
  答:狭义的讲,一个测试用例就是测试人员用以测试被测软件的某个特性或特性组合的一组数据。这组数据可能是从用户处得来的实际的一组数据,也可能是测试人员专门设计出来的测试软件某些功能的一组数据。
  测试规程就是详细的对测试用例设计方法、测试方法、测试工具、测试环境和测试数据进行描述的文档,还可以包括能把某个或某一组测试用例应用到被测软件上完成某项测试的一系列的操作步骤。
  设计测试用例应当从以下几方面考虑:边界值,等价类划分,有效/无效值等。
  6、什么是软件质量保证?软件质量保证人员与开发人员的关系如何?(高级)
  答:软件质量保证就是通过确保软件过程的质量,来保证软件产品的质量。
  软件质量保证人员和开发人员之间具有管理上的严格的独立性,两个小组的管理员都不能越权管理另一组,但都可以向更高层的管理者汇报软件开发中的问题。
  软件工程师笔试题及答案二
  一、选择题
  1、设float a=2, b=4, c=3;,以下C语言表达式与代数式 (a+b)+c计算结果不一致的是
  A.(a+b)*c/2
  B.(1/2)*(a+b)*c
  C.(a+b)*c*1/2
  D.c/2*(a+b)
  参考答案:B,因为a,b,c三个变量都是浮点数,所以在B答案中其结果是0,因为在计算1/2是就是0,如果改成1/2.0就正确了。
  2、为了向二进制文件尾部增加数据,打开文件的方式应采用
  A.″ab″
  B.″rb+″
  C.″wb″
  D.″wb+″
  参考答案:D
  3、下述程序执行后的输出结果是
  #include
  main()
  {
  int x='f';
  printf("%c ",'a'+(x-'a'+1));
  }
  A.g
  B.h
  C.i
  D.j
  参考答案:A
  4、C语言中,下列运算符优先级最高的是
  A.!
  B.%
  C.>>
  D.= =
  参考答案:A
  5、数组定义为“ int a [ 4 ] ; ”,表达式 ( ) 是错误的。
  A.*a
  B.a [ 0 ]
  C.a
  D.a++
  参考答案:D
  6、执行语句“ k=7>>1; ”后,变量 k 的当前值是
  A.15
  B.31
  C.3
  D.1
  参考答案:C
  7、定义函数时,缺省函数的类型声明,则函数类型取缺省类型
  A.void
  B.char
  C.float
  D.int
  参考答案:D
  8、若main()函数带参数,参数个数最多是
  A.0
  B.1
  C.2
  D.3
  参考答案:C 只知道有定义形式main(int argc,char* argv[]))
  9、若有宏定义:#define MOD(x,y) x%y
  则执行以下语句后的输出结果是
  int a=13,b=94;
  printf(″%d ″,MOD(b,a+4));
  A.5
  B.7
  C.9
  D.11
  参考答案:B
  10、下列各个错误中,哪一个不属于编译错误
  A.改变 x 原值 3 为 5 ,写作“ x==5 ;”
  B.花括号不配对
  C.复合语句中的最后一条语句后未加分号
  D.变量有引用、无定义
  参考答案:A
  11、下列程序段运行后, x 的值是( )
  a=1;b=2;x=0;
  if(!( -- a))x -- ;
  if(!b)x=7;else ++x;
  A.0
  B.3
  C.6
  D.7
  参考答案:A
  12、设
  #define N 3
  #define Y(n) ((N+1)*n)
  则表达式2*(N+Y(5+1))的值是
  A.42
  B.48
  C.54
  D.出错
  参考答案:B Y(5+1) 传递过去的应该是6,而不是简单的把5+1给替换掉
  13、若定义了char ch[]={″abcdef″},*p=ch;则执行printf(″%c″,*p+4);语句的输出结果是
  A.def
  B.d
  C.e
  D.0
  参考答案:C
  14、下列转义字符中错误的是
  A.′′
  B.′14′
  C.′x111′
  D.′2′
  参考答案:C error C2022、 '273' 、 too big for character
  15、算术运算符,赋值运算符和关系运算符的运算优先级按从高到低依次为
  A.算术运算、赋值运算、关系运算
  B.算术运算、关系运算、赋值运算
  C.关系运算、赋值运算、算术运算
  D.关系运算、算术运算、赋值运算
  参考答案:B
  16、设#define N 3
  #define Y(n) ((N+1)*n)
  则表达式2*(N+Y(5+1))的值是
  A.42
  B.48
  C.54
  D.出错
  参考答案:B
  17、表达式 strcmp( “ 3.14 ”,“ 3.278 ” ) 的值是一个
  A.非零整数
  B.浮点数
  C.0
  D.字符
  参考答案: A
  18、设struct
  { short a;
  char b;
  float c;
  }cs;
  则sizeof(cs)的值是
  A.4
  B.5
  C.6
  D.7
  参考答案: D 字节对齐的话应该是8
  19、若变量已正确定义,表达式( j=3 , j++ )的值是
  A.3
  B.4
  C.5
  D.0
  参考答案:A
  20、C 语言中运算对象必须是整型的运算符是
  A.%
  B./
  C.!
  D.**
  参考答案:A
  二、简答题
  21、打印一个N*N的方阵,N为每边字符的个数( 3〈N〈20 ),要求最外层为“X”,第二层为“Y”,从第三层起每层依次打印数字0,1,2,3,...
  例子:当N =5,打印出下面的图形:
  X X X X X
  X Y Y Y X
  X Y 0 Y X
  X Y Y Y X
  X X X X X
  22、谈谈COM的线程模型。然后讨论进程内/外组件的差别。
  23、多态类中的虚函数表是Compile-Time,还是Run-Time时建立的?
  参考答案:
  虚拟函数表是在编译期就建立了,各个虚拟函数这时被组织成了一个虚拟函数的入口地址的数组.
  而对象的隐藏成员--虚拟函数表指针是在运行期--也就是构造函数被调用时进行初始化的,这是实现多态的关键.
  24、#include
  void main()
  { int c;
  while ((c=get))!= ′ n ′ )
  switch(c - ′ 2 ′ )
  { case 0、
  case 1、putc+4);break;
  case 2、putc+4);break;
  case 3、putc+3);break;
  default、putc+2);break;
  }
  printf( ″ n ″ );
  }
  运行时输入: 2473 ,输出结果:
  参考答案:6897 VC++6.0测试过
  25、用两个栈实现一个队列的功能?
  参考答案:
  设2个栈为A,B, 一开始均为空.入队、
  将新元素push入栈A;出队、
  (1)判断栈B是否为空;
  (2)如果不为空,则将栈A中所有元素依次pop出并push到栈B;
  (3)将栈B的栈顶元素pop出;这样实现的队列入队和出队的平摊复杂度都还是O(1),
  26、写一语句实现x是否为2的若干次幂的判断。
  参考答案:!(X)&(X-1)
  27、解二次方程、a*x*x+b*x+c
  int Quadratic( double a,double b,double c,double& x1,double& x2);
  返回值:解的个数
  28、如何判别一个数是unsigned。
  参考答案;
  #define issignal(x) ((x>=0 && ~x>=0) ? 1、0) //为1是无符号 为0有符号
  29、执行下述程序的输出结果是 ABCDEFCDEFEF 。
  #include
  char b[]="ABCDEF";
  main()
  {
  char *bp;
  for (bp=b;*bp;bp+=2)
  printf("%s",bp);
  printf(" ");
  }
  30、已知一个数组table,用一个宏定义,求出数据的元素个数。
  参考答案:#define NTBL
  #define NTBL (sizeof(table)/sizeof(table[0]))







传智播客为了将更优质的教育资源惠及更多学子,经过多年的教学探索及战略布局,已向着综合型职业教育集团发展,目前旗下已涵盖传智播客IT教育培训,黑马程序员训练营及博学谷三大子品牌。现直营分校已遍布北京、上海、广州、深圳、武汉、郑州、西安、哈尔滨、长沙、济南等一线城市及省会城市,并将逐步在其他省会城市开始直营分校,让学员可以离高薪更近一点。
  经过10年的专业积淀,传智播客一直专注培养Android、iOS、Java、C/C++、PHP、UI设计、游戏开发、大数据、网络营销、前端与移动开发等泛IT领域的应用工程师,并向社会输送了数10万泛IT行业的高级人才,其中90%以上的学员都在北、上、广、深等一线城市高薪就业。有效的解决了当下互联网行业飞速发展,高端人才供不应求的难题,并且带动了整个IT产业的发展。
  传智播客精益求精的教学品质,也赢得了学员口口相传,这也使得传智播客稳居国内IT培训的领先地位。
  java培训
  传智播客的java培训课程已经有十三年的历史。教育质量始终领先同行业。
  传智Java培训拥有6大课程优势:(http://www.itcast.cn/javaee/
  ①独有的一站式IT职业教育体系,让学员通过6个月的线下学习实现高起点就业, 12个月的线上在职进阶课实现升职加薪,大幅提升学员的职场晋升速度。
  ②60+套技术解决方案,覆盖职场常见开发问题,让学员就业后快速上手开发难题,轻松成为核心员工。
  ③超大项目库,覆盖7大就业主流热门行业,让学员边学习边积累项目开发经验。
  ④超千人投入的3大课程研发库,每年耗资千万打造领先行业的优质课程。
  ⑤传智&华为课程共建,持续为课程输出前沿技术。
  ⑥120+超强师资团队,多为总监、架构师出身,除了专业技能,还为你规划适合你的职业发展路线。
  python培训
  传智播客的python培训班拥有数位总监级讲师,优质的python培训课程以及良好的班级分为使传智播客成为python培训口碑最好的机构。
  Python5.0课程重磅升级,再树行业新标杆(http://www.itcast.cn/python/
  传智根据最新的技术发展方向和企业用人需求, 对Python课程进行了全面升级——Web开发课程占比达40%,包含了热点技术方案、门户及管理信息系统等;人工智能课程占比达30%,包含机器学习常见算法、AI实例演练等;独创“黑马头条”大型一站式项目,集齐六大前沿技术,项目实训超40天;就业强化课程为学员准备了数据分析、自动化测试等六大就业强化课程方向,助学员轻松实现高薪就业。
  大数据培训
  大数据是这几年来互联网的重点发展方向,大数据同样是传智播客的热门课程之一。作为大数据培训口碑好机构,传智播客始终以优越的授课质量领先行业。
  大数据课程紧跟行业最新动态带你走向大数据前沿(http://www.itcast.cn/javayun/
  多多年来,大数据教研团队一直紧跟大数据技术市场发展的趋势,确保市场上流行的新技术能不断更新到所学的培训课程中来。本次课程涵盖大数据体系中核心技术,包括Hadoop、Storm、Spark、Hbase、Python、分布式、机器学习等;知识紧密结合企业的热门需求,授课进度更加科学合理,精心打磨的课程体系,为提升核心竞争力保驾护航!
  php培训
  传智播客php培训拥有者业界超强的php培训课程体系,是业内PHP全栈工程师培训班中的佼佼者,为广大编程爱好者提供PHP+H5全栈工程师培训
  课程重磅升级专注培养PHP+H5全栈工程师(http://www.itcast.cn/php/
  传智播客PHP+H5全栈工程师课程源自于长期市场调研,学员反馈等渠道, 汇总出实用的PHP+H5全栈工程师及其周边技术,学员学习本课程之后, 可以快速融入企业开发环境中。课程分为Web前端、前端进阶、核心编程、移动开发、 性能优化等阶段,涵盖HTML5、CSS3、PHP7、Mysql数据库、Mysqli扩展、Https协议、 Smarty、SVN、Ajax、jQuery、Node.js、Git、Redis等核心技术。 同时针对于每项核心技术,做使用及原理上的讲解,使学员知其然并知其所以然,达到掌握原理后,做任何扩展都会游刃有余。
  linux培训
  传智播客linux培训班,汇聚优秀专业的运维大牛,严谨的教学态度以及专业的教学水平,让传智播客成为优质的linux运维培训机构。
  独创场景式教学模式,更贴近真实企业开发场景(http://www.itcast.cn/linux/
  场景式教学模式如同在课堂真实还原企业开发场景,由讲师带领学员完整实操从分析需求、搭配工具,到解决开发问题等各个开发环节,缩短学员就业后与新团队的磨合期,让学员能够快速融入团队,进入高效的工作状态。同时,传智播客强大的课程研发人才库会第一时间分析企业用人需求,并实时更新课程内容,让学员学习到更贴合一线企业需求的新热技术。
  go语言培训
  传智播客GO语言培训班聘请了业内go语言大牛讲师,全面的go语言培训课程,以及严谨的教学态度,为众多go语言学子实现高薪梦想。传智播客GO语言+区块链培训班。
  始终如一的优质课程,全面覆盖企业需要的高薪技术(http://www.itcast.cn/go/
  传智播客课程研发人才库会根据大数据爬虫系统分析技术发展趋势和企业用人需求,并实时更新课程内容。正是因为这种强大的研发投入,传智Go语言课程才能始终如一的优秀。 传智Go语言课程分为开发实战、Golang高级编程、Golang网络与服务器开发、容器化编程、基于分布式的Golang微服务开发、区块链公链开发、区块链框架编程等十个阶段,全面覆盖新热技术,让学员高薪就业无压力。
  产品经理培训
  传智播客产品经理培训班是专业的产品经理孵化基地,有着经验丰厚的产品经理大牛讲师,好口碑产品经理培训课程来自传智播客。
  培养高薪必备能力助你成为企业疯抢的产品精英(http://www.itcast.cn/pm/
  产品经理课程分为8个阶段:1.产品基础,通过学习产品经理工作流程、流程图、结构图、墨刀的学习,培养产品经理工作思维;2.必备技能,掌握需求分析、竞品分析、用户角色、用户画像等;3.产品前台,通过学习京东、网易严选等大型电商平台掌握四流合一思想;4.产品后台,掌握后台产品模型基础、了解电商后台基础业务等;5.产品运营,掌握产品的应用市场上架、线上线下推广、APP换量、多渠道提升产品用户量;6.产品思维,能够为真正的用户设计正确的产品;7.项目实战;8.行业拓展,涉及在线教育、金融、区块链、大数据、微信小程序、人工智能等。
  影视制作培训
  传智播客影视制作培训班是由专业的影视制作行业老师带队授课,专业的授课方式以及严谨的教学态度为社会输送一大批影视制作尖端人才,传智播客影视制作培训班。
  匠心课程体系,培养综合性多维人才(http://www.itcast.cn/movies/
  影视制作的就业方向从剪辑到编导,从动画到特效,就业选择多种多样。 传智播客的影视制作课程涵盖影视编导项目特训、影视合成与特效包装、C4D三维软件实训、影视包装设计等多个方向,几乎涵盖目前影视主流的就业方向,让学员就业时多一重技能傍身,增加高薪就业砝码。
  ui设计培训
  传智播客UI设计培训一直本着学为人师,行为世范德行操守要求着自己,并成为UI培训行业中前行者,为广大UI设计好者提供UI培训,UI设计培训班,UI设计师培训,设计培训,网页设计培训,平面设计培训,UI界面设计,APP UI设计培训服务。(http://www.itcast.cn/ui/
  课程内容系统全面 打造会代码的全能设计师
  目前,设计师和开发者目前正处于互联网的两端,如果能互相学习对方的技术,会使 双方协作效率大大提升。基于此,传智播客UI设计学院研发了设计加前端代码的课程体系。内容 包括平面设计、电商设计、网页设计、UI设计、html+css、JS、JQ、html5+css3、响应式布局、 Flash等课程内容,根据现实工作的需求,由浅入深合理安排,从工具软件的使用开始, 到初级案例分析练习,再经历项目实战,培养合格的会写代码的全能设计师人才
  新媒体运营培训
  传智播客新媒体+短视频培训,课程紧跟时代潮流,就业率屡创新高,新媒体+短视频培训的佼佼者,口碑推荐率70%,真正用情怀做教育的新媒体运营培训机构。
  新媒体+短视频运营培训课程超50%为项目实操
      软件测试培训
      大型项目全新升级
    2大业务方向+4大高薪技能全新升级的大型项目贯穿学习过程,覆盖2大主流业务方向:PC端测试、移动端测试;覆盖4大高薪技能:功能测试、性能测试、接口自动化、UI自动化。同时,软件测试新增4天项目课时:PC端项目新增2天课时;移动端项目新增2天课时。
 坚持传统模块化授课改革,采用实训、作业、练习相结合,授课环境模拟企业真实工作场景。课程体系包括微博/微信/自媒体平台运营、短视频运营、微信小程序运营、产品运营、营销策划、媒介推广六大阶段,涉及200多个行业流行案例分析教学。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马