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

11. 程序输出结果是( )

#include <stdio.h>

#define ONE 1
#define TWO ONE+1
#define THREE TWO+1

void main() {
    printf("%d\n", THREE - ONE);
}

答案:C(2)

📌 解析:

  • 宏展开顺序:THREE → TWO + 1 → (ONE + 1) + 1 → (1 + 1) + 1 = 3
  • THREE - ONE = 3 - 1 = 2

12. 结构体定义与变量叙述,不正确的是( )

struct teacher {
    int num;
    char sex;
    int age;
} teacher1;

答案:D(teacher1 是结构体类型名)

📌 解析:

  • A 正确:定义了结构体类型 struct teacher
  • B 正确:struct 是关键字
  • C 正确:num, sex, age 是成员
  • ❌ D 错误:teacher1 是结构体变量,不是类型名

13. 把 p 所指结点插入为链表第 2 个结点,代码应是( )

结构如下:

struct link {
    int data;
    struct link *next;
} *head, *p;

答案:A

📌 解析:

  • 插入为第 2 个结点的操作:
  • A 正确。其他选项错误或顺序颠倒。

14. 不正确的枚举定义是( )

选项:A. enum b {1, 2, 3};B. enum a {A, B, C};C. enum c {D=3, E, F};D. enum d {X=0, Y=5, Z=9};

答案:A

📌 解析:

  • 枚举成员必须是标识符,不能是数字,A 是非法的;
  • B、C、D 都是合法定义;
  • C 示例中 E=4, F=5 是自动递增合法用法

15. 关于 typedef 语句,正确的是( )

定义:

typedef int *INTEGER;
INTEGER p, *q;

答案:

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

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

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

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务