嵌入式笔试刷题(第33天)
1. 以下叙述中不正确的是(C)
解析:
- A:不同函数中可以使用相同名字的变量,各自局部,✔️
- B:函数的形式参数本身是局部变量,✔️
- C:错误!在复合语句(如
{}
中)中定义的变量,只在复合语句块内有效,并不是整个函数范围!❌ - D:在函数内定义的局部变量只在函数范围内有效,✔️
✅ 答案:C
2. 有 int a[3][4]={0};
正确叙述是(D)
解析:
- 这种写法是全部初始化为0。
- 不仅仅是 a[0][0],而是整个数组全是0。
✅ 答案:D
3. 关于C语言,以下叙述不正确的是(B)
解析:
- A:分号是C语言必须的,✔️
- B:主函数必须叫
main
,否则程序入口找不到!❌ - C:注释可以在句子后面写,比如
printf("hi"); //打印hi
,✔️ - D:函数是C程序的基本构建块,✔️
✅ 答案:B
4. 程序输出(D)
代码:
char a[3], b[] = "china"; a = b; printf("%s", a);
分析:
- 错误!
a
是数组,b
是数组,不能直接赋值!数组之间不能赋值。 - 因此编译错误,连运行都过不去。
✅ 答案:D
5. 不正确的叙述是(A)
解析:
char a[] = "It is mine";
a数组大小 = 字符串长度+1(包括\0),所以大小是11个字符,不是10个。- 所以A选项(只能存10个字符)是错误的!
✅ 答案:A
6. 以下程序输出(B)
代码:
void main(void) { char a[10] = {'1','2','3','4','5','6','7','8','9','0'}; char *p; int i = 8; p = a + i; printf("%s\n", p-3); }
分析:
p
= 指向a[8]
('9')
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
嵌入式笔试专栏 文章被收录于专栏
本专栏系统整理了嵌入式方向笔试中常见的知识点和高频考题,涵盖基础理论、常用算法、C语言陷阱、操作系统原理、驱动开发、常见外设通信协议(如 I2C/SPI/UART)、RTOS、Linux 内核、以及实用电路知识等内容。