嵌入式笔试刷题(第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 内核、以及实用电路知识等内容。