嵌入式工程师笔试题目

时间:2017-09-06 编辑:美斌 手机版

  嵌入式工程师是指具有C/C++语言、汇编语言等基础,熟悉模拟电子技术等硬件知识,了解处理器体系结构,做嵌入式系统设计和开发,包括硬件系统的建立和相关软件开发、移植、调试等工作的人,下面就是小编整理的嵌入式工程师笔试题目,请看:

  嵌入式工程师笔试题目【1】

  1、一根金条长31厘米,如果把它切成数段,使其中的一段或几段能够接成长为1到31中任何整数的金条,请问要切几次?

  A.4

  B.5

  C.6

  D.7

  参考答案:A

  2、运行在多核处理器上的Linux环境中,若临界区非常短,且不允许线程上下文切换的情况下,使用下列哪种机制满足上述需求并且性能最好?

  A.SpinLock

  B.Mutex

  C.Semaphore

  D.Condition variable

  参考答案:A

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

  #include

  int main(){

  int x=10,y=10;

  printf("%d %d",x--,--y);

  }

  A.10 10

  B.9 9

  C.9 10

  D.10 9

  参考答案:D

  4、下面所述步骤中,不是创建进程所必须的步骤是?

  A.由调度程序为进程分配CPU

  B.建立一个进程控制块

  C.为进程分配内存

  D.将进程控制块链入就绪队列

  参考答案:A

  5、下面描述中,表达正确的有()

  A.公有继承是基类中的public成员在派生类中仍是public的

  B.公有继承是基类中的private成员在派生类中仍是private的

  C.公有继承是基类中的protected成员在派生类中仍是protected的

  D.私有继承是基类中的public成员在派生类中仍是private的

  参考答案:ACD

  6、int listen(SOCKET s, int backlog);该函数中第二个参数的含义是?

  A.是否打开log信息

  B.是否打开后台log信息

  C.后台等待连接队列的最大限制值

  D.后台等待连接队列的最小限制值

  参考答案:C

  7、Java程序中的类名称必须与存放该类的文件名相同。

  A.对

  B.错

  参考答案:B

  8、造成软件危机的主要原因是以下里的哪几个?

  ①用户使用不当 ②硬件不可靠 ③对软件的错误认识 ④缺乏好的开发方法和手段 ⑤软件本身特点 ⑥开发效率低

  A.(①②③)

  B.(②③④)

  C.(③⑤⑥)

  D.(④⑤⑥)

  参考答案:D

  9、下面有个hibernate延迟加载,说法错误的是?

  A.Hibernate2延迟加载实现:a)实体对象 b)集合(Collection)

  B.Hibernate3 提供了属性的延迟加载功能

  C.get支持延迟加载,load不支持延迟加

  D.hibernate使用Java反射机制,而不是字节码增强程序来实现透明性

  参考答案:C

  10、确定模块的功能和模块的接口是在软件设计的那个阶段完成的?

  A.需求分析

  B.概要设计

  C.详细设计

  D.编码

  参考答案:B

  嵌入式工程师笔试题目【2】

  1、下面有关servlet中init,service,destroy方法描述错误的是?

  A.init()方法是servlet生命的起点。一旦加载了某个servlet,服务器将立即调用它的init()方法

  B.Service()方法处理客户机发出的所有请求

  C.destroy()方法标志servlet生命周期的结束

  D.servlet在多线程下使用了同步机制,因此,在并发编程下servlet是线程安全的

  参考答案:D

  2、下面有关java和c++的描述,错误的是?

  A.java是一次编写多处运行,c++是一次编写多处编译

  B.c++和java支持多重承

  C.Java不支持操作符重载,操作符重载被认为是c++的突出特征

  D.java没有函数指针机制,c++支持函数指针

  参考答案:B

  3、()设计模式将抽象部分与它的实现部分相分离。

  A.Singleton(单例)

  B.Bridge(桥接)

  C.Composite(组合)

  D.Facade(外观)

  参考答案:B

  4、哪些设计模式是降低资源使用率:

  A.prototype

  B.singleton

  C.flyweight

  D.abstract factory

  参考答案:BC

  5、运行在多核处理器上的Linux环境中,若临界区非常短,且不允许线程上下文切换的情况下,使用下列哪种机制满足上述需求并且性能最好?

  A.SpinLock

  B.Mutex

  C.Semaphore

  D.Condition variable

  参考答案:C

  6、Unix系统中,哪些可以用于进程间的通信?()

  A.Socket

  B.共享内存

  C.消息队列

  D.信号量

  参考答案:ABCD

  7、对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行?

  A.onPause()

  B.onCreate()

  C.onResume()

  D.onStart()

  参考答案:A

  8、在android中使用Menu时可能需要重写的方法有?

  A.onCreateOptionsMenu()

  B.onCreateMenu()

  C.onOptionsItemSelected()

  D.onItemSelected()

  参考答案:AC

  二、解答题

  1、编写一个函数,作用是把一个char组成的字符串循环右移n个。比如原来是“abcdefghi”如果n=2,移位后应该是“hiabcdefgh” 函数头是这样的:

  //pStr是指向以'\0'结尾的字符串的指针

  //steps是要求移动的n

  void LoopMove ( char * pStr, int steps )

  {

  //请填充...

  }

  参考答案

  正确解答1:

  void LoopMove ( char *pStr, int steps )

  {

  int n = strlen( pStr ) - steps;

  char tmp[MAX_LEN];

  strcpy ( tmp, pStr + n );

  strcpy ( tmp + steps, pStr);

  *( tmp + strlen ( pStr ) ) = '\0';

  strcpy( pStr, tmp );

  }

  正确解答2:

  void LoopMove ( char *pStr, int steps )

  {

  int n = strlen( pStr ) - steps;

  char tmp[MAX_LEN];

  memcpy( tmp, pStr + n, steps );

  memcpy(pStr + steps, pStr, n );

  memcpy(pStr, tmp, steps );

  }

  【剖析】

  这个试题主要考查面试者对标准库函数的熟练程度,在需要的时候引用库函数可以很大程度上简化程序编写的工作量。

  最频繁被使用的库函数包括:

  (1) strcpy

  (2) memcpy

  (3) memset

  2、软件测试应该划分几个阶段?简述各个阶段应重点测试的点?各个阶段的含义?

  参考答案:

  大体上来说可分为单元测试,集成测试,系统测试,验收测试,每个阶段又分为以下五个步骤: 测试计划,测试设计,用例设计,执行结果,测试报告

  初始测试集中在每个模块上,保证源代码的正确性,该阶段成为单元测试,主要用白盒测试方法。 接下来是模块集成和集成以便组成完整的软件包。集成测试集中在证实和程序构成问题上。主要采用黑盒测试方法,辅之以白盒测试方法。

  软件集成后,需要完成确认和系统测试。确认测试提供软件满足所有功能、性能需求的最后保证。确认测试仅仅应用黑盒测试方法。

[嵌入式工程师笔试题目]相关文章:

1.嵌入式笔试题目

2.网易运维工程师笔试题目

3.it笔试题目

4.华为软件测试工程师笔试题目

5.2017软件测试工程师笔试题目

6.网易网站测试工程师笔试题目

7.网易游戏开发工程师笔试题目

8.PHP工程师笔试题目及行测题型示例

9.校园招聘腾讯工程师笔试题目

10.关于软件测试工程师笔试题目

相关文章