德赛西威 - 嵌入式软件开发岗 - 笔试

❗❗如果本文对您有帮助,请不要吝啬您的评论、点赞、收藏与小花,这对我非常重要!谢谢!❗❗

alt

本文所涉及的题目均为基于个人学习和理解重新表述的内容,仅供学习交流之用,不代表任何实际考试题目。如有雷同,纯属巧合。

岗位:嵌入式软件开发岗(2025届-深圳)

题型:25 道选择题

1、选择题

1.1

若有定义 int a[5], *p=a;,则对 a 数组元素地址的正确引用是 ==(C)==

  1. A. &a[5]
  2. B. *p+2
  3. C. *(a+2)
  4. D. *(p+5)

解答:

数组名 a 和指向数组的指针 p 均表示数组首地址
&a[5]*(p+5) 均代表数组 a 第 5 个元素后的那一个元素(从 a[0] 开始),超出索引,所以选项 A 和 C 错误
*p+2a[0]+2 等价,表示将数组 a 的第一个元素值加 2 ,而不是表示 a[2],选项 B 错误
*(a+2) 表示 a[2],未超过索引,选项 C 正确

1.2

面向对象程序设计思想的主要特征不包括 ==(A)==

  1. A. 能分解,逐步求精
  2. B. 封装性和信息隐藏
  3. C. 继承性
  4. D. 多态性

解答:

封装、继承和多态

1.3

以下定义语句中,错误的是 ==(A)==

  1. A. int n=5,a[n];
  2. B. int a[]={1,2};
  3. C. char *a[3];
  4. D. char s[10]="test";

解答:

数组的大小必须在编译时确定,不应该是一个变量,应该是一个常量

1.4

公有派生类的成员函数中不能直接访问基类中的继承来的某个成员,则该成员一定是基类中的 ==(C)==

  1. A. 公有成员
  2. B. 保护成员或私有成员
  3. C. 私有成员
  4. D. 保护成员

解答:

公有继承,派生类继承基类公有和保护对象,权限不变,基类私有对象不可访问

1.5

在单处理器的多进程系统中,进程什么时候占用处理器和能占用多长时间,取决于 ==(B)==

  1. A. 进程完成什么功能
  2. B. 进程自身和进程调度策路
  3. C. 进程相应的程序段的长度
  4. D. 进程总共需要运行时间多少

1.6

许多程序设计语言规定,程序中的数据都必须具有类型,其作用不包括 ==(C)==

  1. A. 便于为数据合理分配存储单元
  2. B. 便于对参与表达式计算的数据对象进行检查
  3. C. 便于定义动态数据结构
  4. D. 便于规定数据对象的取值范围及能够进行的运算

解答:

定义动态数据结构(如链表、树等)并不是数据类型的主要作用

1.7

下列不能作为类成员的是 ==(B)==

  1. A. 自身类对象的指针
  2. B. 自身类对象
  3. C. 自身类对象的引用
  4. D. 另一个类对象

解答:

一个类包含自身类型的对象,那么编译器在创建这个类的对象时会递归地尝试创建该对象的成员(因为它也是该类的对象),这将导致无限递归,导致编译失败

1.8

在语句 cout<<123 中,cout 是 ==(C)==

  1. A. 类名
  2. B. 函数名
  3. C. 对象名
  4. D. C++ 关键字

解答:

在 C++ 中 coutostream 类的全局对象,用于输出数据到标准输出(通常是控制台)

1.9

以下对结构体变量 stul 中成员 age 的非法应用是 ==(C)==

struct student
{
	int age;
	int num;
}stul,*p;

p=&stul;
  1. A. p->age
  2. B. (*p).age
  3. C. student.age
  4. D. stul.age

解答:

stul 是结构体变量,访问内部成员使用 . 操作符,p 是结构体指针,访问内部成员使用 -> 操作符,因此选项 C 错误

1.10

假如在 32 位系统有以下结构体定义,那么 sizeof(tA) 的值是多少 ==(B)==

typedef struct {
    int a;
    char b;
    int c;
    short d;
    char e;
}tA;
  1. A. 12
  2. B. 16
  3. C. 20
  4. D. 32

解答:

32 位系统默认对齐数为 4 ,tA 成员变量在内存中分配情况如下:
a(4字节) + b(1字节) + 填充(3字节) + c(4字节) + d(2字节) + e(1字节)+填充(1字节)= 16 字节

1.11

假定 a 和 b 为 int 型变量,则执行以下语句后 b 的值为 ==(C)==

a=1;b=10;
do
{
	b*=a;
	a++;
}while(b--<0);
  1. A. -2
  2. B. -1
  3. C. 9
  4. D. 8

解答:

执行循环前:a=1;b=10;
第一次执行循环体结果:a=2;b=10;
判断循环条件,不满足,b=9;,结束循环

1.12

下列程序的输出结果是 ==(B

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

欢迎来到我的专栏,在这里,我将整理并分享2024年各大企业的真实笔试/面试真题,同时还整理了嵌入式软件相关的八股知识。专栏内容涵盖C/C++基础、嵌软常见通信协议、ARM、FreeRTOS、Linux OS相关问题汇总,希望能帮助求职者了解考试趋势和嵌入式常见考点。无论你是准备面试,还是希望提升自己的专业知识,这里都能为你提供宝贵的参考和学习资源。

全部评论

相关推荐

05-12 16:04
已编辑
江西财经大学 Java
点赞 评论 收藏
分享
评论
1
5
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务