嵌入式笔试刷题(第39天)

11. 请计算以下 nCount 的值:

#define DEFAULT_NUM 100+200
int nCount = DEFAULT_NUM*10;

则 nCount = ( )

A. 2001

B. 2010

C. 2100

D. 3000

答案:B. 2010

解答过程:

  • 预处理后展开为:
  • 按运算优先级,先算乘法: [ nCount = 100 + 2000 = 2100 ]
  • 注意,正确处理应该加括号:
  • 这里没有括号,所以是先算200*10

因此,结果是2100,标准答案应该是C.2100,原题给选项有问题!

12. 假设 Class A : public B,即类A是类B的派生类,

则说明一个A类的对象和删除A类对象时,调用构造函数、析构函数的次序分别为( )

A. A,B; B,A

B. B,A; B,A

C. B,A; A,B

D. A,B; A,B

答案:C. B,A; A,B

解答过程:

  • 构造时: 先构造基类,再构造派生类(B → A)
  • 析构时: 先析构派生类,再析构基类(A → B)

13. 对于 int *A[8]; 的描述中,正确的是( )

A. A是一个指向数组的指针,所指向的数组是8个int型元素

B. A是一个指向某数组中8个元素的指针,该元素是int型变量

C. A[5]表示数组的第8个元素的值,是int型的值

D. A是一个具有8个元素的指针数组,每个元素是一个int型指针

答案:D. A是一个具有8个元素的指针数组,每个元素是一个int型指针

解答过程:

  • int *A[8];数组,有8个元素。
  • 每个元素是一个指向int的指针。

14. 假设入栈序列是 I,J,K,L,M,则不可能的出栈序列是( )

A. LMKJI

B. MLKJI

C. IJKLM

D. LKMIJ

答案:D. LKMIJ

解答过程:

  • 栈遵循先进后出
  • D选项无法通过正常的栈操作实现该出栈顺序。

15. 十六进制数 AA 所对应的八进制数为( )

A. 1414

B. 630

C. 252

D. 3030

答案:B. 630

解答过程:

  • 0xAA = 10*16 + 10 = 170(十进制)
  • 170 转换成八进制是630

16. 已知 x=0, y=1, z=2,求逻辑表达式 ++x||--y&&++z 的值( )

A. 0

B. 1

C. 2

D. 3

答案:B. 1

解答过程:

  • ++x:x变为1,结果为真(非0)。
  • 逻辑或||,短路运算,前面已经为真,后面不再计算。
  • 整个表达式结果是1。

17. 箱子中有一些硬币,其中1角6个,5角5个,1元4个,从中任取4个

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

嵌入式笔试专栏 文章被收录于专栏

本专栏系统整理了嵌入式方向笔试中常见的知识点和高频考题,涵盖基础理论、常用算法、C语言陷阱、操作系统原理、驱动开发、常见外设通信协议(如 I2C/SPI/UART)、RTOS、Linux 内核、以及实用电路知识等内容。

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务