海信集团软件通用试卷(通用软件/嵌入式软件等等) 9-12
《嵌入式软件开发笔试与面试手册》:https://blog.nowcoder.net/zhuanlan/jvN8gj
《嵌入式软件笔试-2023年真题汇总》:https://blog.nowcoder.net/zhuanlan/0oDWVm
单选题
在linux中,下列shell脚本的执行结果是
echo 'niuniu niumei' | grep -oE "niuniu|niumei" | awk '{
print "Start"
print $0
next
print "End"
}'
A
Start
niuniu niumei
B
Start
niuniu
Start
niumei
C
Start
niuniu
End
Start
niumei
End
D
Start
niuniu niumei
End
解释:
print $0:打印当前行的内容(这里是 "niuniu" 和 "niumei")
2.Linux中,某配置文件针对所有用户的访问权限是只读,但操作者是文件所有者,vi编辑器强制存盘退出的指令是()
A :wq!
B :wq
C ZZ
D :q!
3.下面结构是静态链表的存储结构的表示,则其存储的序列为()
数组下标 |
0 |
1 |
2 |
3 |
4 |
5 |
数值域 |
|
4 |
5 |
11 |
17 |
3 |
指针域 |
2 |
5 |
1 |
4 |
-1 |
3 |
A5,11,4,3,17
B5,4,3,11,17
C5,3,4,11,17
D4,5,11,17,3
解释:
表头节点:从表头开始,通常在静态链表中用特定下标(例如 0)来表示,但并不存储实际有效数据。
指针域:每个元素的“指针”指向下一个元素的位置,通常是数组的下标。
数据:实际存储的数据值。
4.与用于将虚拟地址转换为物理地址的单级页表相比,多级页表更好是因为()
A它有助于减少页面替换算法中的页面错误数量。
B它减少了读取或写入内存的访问时间。
C它有助于减少实现进程的虚拟地址空问所需的页表大小。
D它是翻译后备缓冲区所必需的
解释:
多级页表通过只分配当前需要的页表部分来减少所需的物理内存量。这种方式允许系统高效地支持大的虚拟地址空间而无需为每个进程分配巨大的连续页表空间。
5.for(i=1;i<=n;i++)
for(j=1;j<=n;j++){
c[i][j]=0;
for(j=1;j<=n;j++)
c[i][j]=c[i][j]+a[i][k]*b[k][j];
}
关于以上程序,说法错误的是?
A第四行代码执行次数是n*n*(n+1);
B第一行代码执行次数是n+1。
C第二行代码执行次数是n(n+1);
D第三行代码执行次数是n(n+1);
解释:
D共 n*n 次
注意n+1次数是因为循环结束时的最后一次失败判断。
6.n个客户端连接一个UDP服务器,请问服务器需要的套接字数量是?
A n+1
B 1
C 2
D n
E n-1
7.设有递归算法如下,foo(1,3)最终返回结果是()
int foo(int a ,int b)
{
if (b == 0) return 0;
if (b % 2 == 0) return foo(a+a, b/2);
return foo(a+a,b/2)+a;
}
A 6
B 3
C 4
D 5
解释:
调用 foo(1, 3):由于 b = 3 不是 0 且是奇数,进入第三个条件。返回 foo(1+1, 3/2) + 1。
接下来是 foo(2, 1):b = 1 是奇数,所以又是第三个条件。返回 foo(2+2, 1/2) + 2。
最后是 foo(4, 0):b = 0,根据第一个条件返回 0。所以 foo(4, 0) 返回 0。
foo(4, 0) + 2 + 1 =3
8.常知的系统调用包括()
A以下都是
B文件操作
C进程操作
D内存管理
9.相同数据类型组成的有限序列称为线性表,线性表的存储方式有顺序存储和链式存储两种,相比于链式存储,下面特点是顺序存储的好处的是()
A可使线性表存储密度更大
B插入、删除操作方便
C按值查找效率高
D可以表示多种逻辑结构
解释:
顺序存储方式是在数组中连续存放数据元素,因此没有额外的指针空间,使得存储密度高于链式存储,后者需要额外的指针字段来链接节点。
10.关于进程,描述正确的是()
A进程之间的切换比线程快
B
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
本专栏主要发布嵌入式软件开发相关岗位2023年(2024届)的笔试真题(嵌入式软件开发、通用软件开发、C/C++软件开发、算法工程师、数据开发、测试开发等)主要是算法编程题,其中一些岗位笔试含有对应的选择题、填空题、简单题。