嵌入式初级面试题

姓名: 日期: 开始时间:
(答题时间60分钟,答题过程中请不要上网查询资料,不可带走答卷)

1:设float a=2,b=4,c=3;,以下C语言表达式与代数式(a+b)+c计算结果不一致的是( )[3分]
A.(a+b)c/2
B. (1/2)*(a+b)c
C. (a+b)c*1/2
D.c/2
(a+b)

2:为了向二进制文件尾部增加数据,打开文件的方式应采用( )[3分]
A.“ab”
B.“rb+”
C.“wb”
D.“wb+”

3:下述程序执行后的输出结果是( )[3分]
main()
{int x=‘f’; printf( “%c\n”,‘a’+(x-‘a’ +1));}
A.g
B.h
C.i
D.j

4:C语言中,下列运算符优先级高的是( )[3分]
A.!
B.%
C.>>
D.==

5:数组定义为“int a[4];”,表达式( )是錯俣的是().[3分]
A.*a
B.a[0]
С. а
D.a++

6:执行语句“k=7>>1;”后,变量k的当前值是( )[3分]
A.15
B.31
C.3
D.1

7.定义函数时,缺省函数的类型声明,则函数类型取缺省类型( )[3分]
A. void
B. char
C. float
D. int

8:若main()函数带参数,参数个数多是()[3分]
A.O
B.1
C.2
D.3

9:若有宏定义:#define MOD(x, y) x%y则执行以下语句后的输出结果是()[3分]
int a=13, b=94;
printf(“%d\n”, MOD(b, a+4));
A.5
B.7
C.9
D.11

10:下列各个错误中,哪个不属于编译错误( )[3分]
A.改变x 原值3为5,写作“×==5;”
B.花括号不配对
C.复合语句中的后一条语句后未加分号
D.变量有引用、无定义

11:下列程序段运行后,x的值是( )[3分]
a=1;b=2;x=0;
if(!(–a))x–;
if(!b)x=7;else ++x;
A.0
B.3
C.6
D.7

12:设#define N3;define Y(n)((N+1));则表达式2(N+Y(5+1))的值是() [3分]
A.42
B.48
c.54
D.出错

13:若定义了char ch[]={" abc\0def"},*p = ch;则执行printf(“%C”,*p+4);语句的输出结果是( )[3分]
A. def
B.d
C.e
D.O

14:下列转义字符中错误的是()[3分]
A.‘\000’
B.‘\14’
C.‘\x111’
D.‘\2’

15:算术运算符,赋值运算符和关系运算符的运算优先级按从高到低依次为( )[3分]
A.算术运算、赋值运算、关系运算
B.算术运算、关系运算、赋值运算
C.关系运算、赋值运算、算术运算
D.关系运算、算术运算、赋值运算

16:设define N3;#define Y(n)(N+1)n);则表达式2(N+Y(5+1))的值是( )[3分]
A.42
B.48
C.54
D.出错

17:表达式strcmp(“3.14”,“3.278”)的值是一个( )[3分]
A.非零整数
B.浮点数
C.0
D.字符

18:设 struct
{
short a;
char b;
float c;
}cs;
则 sizeof(cs) 的值是( )【3分】

A. 4
B. 5
C. 6
D. 7

19:若变量已正确定义,表达式(j=3, j++)的值是( )【3分】

A. 3
B. 4
C. 5
D. 0

20:C 语言中运算对象必须是整型的运算符是( )【3 分】
A.%
B./
C.!
D.**

21:多态类中的虚函数表是 Compile-Time 还是 Run-Time 时建立的?说说这两种的区别【5分】

22:给出下面这段程序的运行结果【5 分】

#include
void main()
{ int c;while((c=getchar())!=‘\n’)switch(c-2){ case 0:case 1:putchar(c+4);break;case 2:putchar(c+4);break;case 3:putchar(c+3);break;default: putchar(c+2);break;}printf(“\n”);
}

运行时输入:2473,输出结果是:

23:写一语句实现x是否为2的若干次幂的判断。[6分]

24:请简单描述一下什么是IIC总线?标准速率是多少?快速速率是多少?总线设备地址是几位?通信总线有几根,分别是什么?[6分]

25:请问SPI通信总线有几根,分别是什么?[6分]

26:请问USB通信总线的通信速率有几种?分别是多少?[6分]

27:OSI模型是指哪7层?TCP和UDP是OSI模型的第几层,说说他们的区别是什么?[6分]


c++测试题

一、程序阅读题

(1)下面程序的输出结果为

#include <iostream>
using namespace std;void fun(int x, int *y, int &z)
{x = *y + z;*y = x + z;z = x + *y;
}int main()
{int a = 1, b = 2, c = 3;fun(a, &b, c);cout << a << "," << b << "," << c;return 0;
}

(2) 下面程序的的输出结果为

#include<iostream>
using namespace std;int foo(int n)
{int temp;switch(n){case 0: return 1;case 1: return 1;default:temp = (n - 1)*foo(n - 2);cout << temp << " ";return temp;}
}int main()
{foo(6);return 0;
}

二、编程题

(3)实现字符串类“-”运算符的重载,给定两个字符串 str1 和 str2,str1-str2 的输出两个字符串的最长公共子串。(30 分)

(4)给一个01矩阵,1代表是区域像素,0代表空白,如果两个1相邻,那么这两个1属于同一个区块。我们只考虑上下左右为区块,判断区块个数。例如:以下输入数组,对应的输出为3。(30分)

[1,1,0,0,0],
[0,1,0,1,1],
[0,0,0,1,1],
[0,0,0,0,0],
[0,0,1,1,1]

武汉开目软件c++软件工程师考题

一、选择题(前10题每题2.5分,后5题每题4分,共45分)
1:设整型变量n=2,则执行下列语句后,浮点型变量b的值不为0.5的是()
A)b=1.0/n B) b=(float)(1/n) C)b=1/(float)n D)b=1/(n*1.0)

2:在C语言中对一维数组的正确定义为()
A)int a(10); B) int n=10,a[n]; C) int n:a[n]; D)#define N 10 int a[N];

3:若有说明:int n=2; *p=&n; *q=p; 则以下非法的赋值语句是()
A)p=q B)*p=*q C)n=*q D)p=n

4:在函数调用时,以下说法正确的是()
A)函数调用后必须带回返回值
B)实际参数和形式参数可以同名
C)函数间的数据传递不可以使用全局变量
D)主调函数和被调函数总是在同一个文件里

5.设有以下语句: int x=10; x+=3+x%(3),则x的值是()
A)14
B)15
C)11
D)16

6.在C语言中,以下叙述不正确的是()
A)在C程序中,无论是整数还是实数,都能被准确无误地表示
B)在C程序中,变量名代表存储器中的一个位置
C)静态变量对生存期与整个程序的生存期相同
D)C语言中变量必须先定义后引用

7、若执行下面面对程序从键盘输入9,则输出结果是()
#include<stdio.h>
void main()
{
int n;
scanf(“%d”,&n);
if(n++<10) printf(“%d\n”,n);
else printf(“%d\n”,n–);
}
A)11
B)10
C)9
D)8

8、以下哪个结构可以用来存储图?()
A) 栈
B) 二叉树
C) 队列
D) 邻接矩阵

9、设栈S和队列Q的初始状态为空,元素e1, e2, e3, e4, e5, e6依次通过栈S,一个元素出栈后进入队列Q,假设出队的顺序为e2, e4, e3, e6, e5, e1,那么栈S的容量至少应该为()。

A) 2
B) 3
C) 4
D) 5

10、设某算法的时间复杂度函数的递推方程是T(n)=T(n-1)+n(n为正整数)及T(0)=1, 则该算法的时间复杂度为()。

A) O(log n)
B) O(n log n)
C) O(n)
D) O(n*n)

11、为了统计一个非负整数的二进制中1的个数,代码如下:

int CountBit(int x)
{int ret=0;while(x){ret++;_______;}return ret;
}

则空格内要填入的语句是( )

A) X>>=1
B) x&=x-1
C) x|=x>>1
D) x<<=1

12、对于入栈顺序为a,b,c,d,e,f,g的序列,下列( )不可能是合法的出栈序列。

A) a,b,c,d,e,f,g
B) a,d,c,b,e,g,f
C) a,d,b,c,g,f,e
D) g,f,e,d,c,b,a

13、给定含有n个不同的树的数组L=<x1, x2,…, xn>。如果L中存在xi(1<=i<=n)使得x1<x2<…<xi-1< xi >xi+1>…>xn,则称L是单峰的,并称xi是L的“峰顶”。现在已知L是单峰的,请将a~c三行代码补充到算法中使得算法正确找到L的峰顶。
a. Search(k+1,n)
b. Search(1,k-1)
c. return L[k]

Search(l,n)

  1. k<-[n/2]
  2. if L[k] > L[k-1] and L[k] > L[k+1]
  3. then ___________
  4. else if L[k] > L[k-1] and L[k] < L[k+1]
  5. then ___________
  6. else ___________

正确的填空顺序是( )
A) c, a, b
B) c, b, a
C) a, b, c
D) b, a,c

14、一个平面的法线是指与该平面垂直的直线。过点(1,1,1)、(0,3,0)、(2,0,0)的平面的法线是:
A) 过点(1,1,1)、(2,3,3)的直线
B) 过点(0,1,0)、(-3,2,1)的直线

C) 过点(2,0,0)、(5,2,1)的直线(答案)
D) 过点(1,1,1)、(3,2,1)的直线

15、有 A、B、C、D、E、F 6 个集装箱,准备用甲、乙、丙三辆卡车运送,每台卡车一次运两个,若卡车甲不能运 A 箱,卡车乙不能运 B 箱,此外无其它任何限制,要把这 6 个集装箱分配给这 3 台卡车运送,则不同的分配方案的种数为()
A) 168
B) 84
C) 56
D) 42 (答案)

二、填空题

1、输入一个字符,判断该字符是数字、字母、空格还是其他字符(6分)

main()
{char ch;ch = getchar();if (__________){printf("这是一个英文字母");}else if (__________){printf("这是一个数字");}else if (__________){printf("这是一个空格");}else{printf("这是其他字符");}
}

2、用指针做函数参数,对输入对两个整数按大小顺序输出(7分)

void swap(int *p1, int *p2)
{int p;p = ________;________ = ________;________ = p;
}main()
{int a, b;scanf("%d,%d", ________);if(a<b)swap(________);printf("\n%d,%d\n", a, b);
}

3、写出下面程序的输出结果。(7分)

int main()
{int a[6]={1,2,3,4,5,6};int pi=0;int pj=5;int t,i;while(pi<pj){t=a[pi];a[pi]=a[pj];a[pj]=t;pi++;pj--;}for(i=0;i<6;i++){cout << a[i] << ",";}cout << endl;return 0;
}

三、编程题
1、编写一个求解最大公约数的函数。(10分)

int gcd(int a, int b)
{
}

2、编写一个int类型的动态数组“追加”方法(10分)
3、编写一个函数,实现标准C语言atoi函数的功能(字符串转换成整数)(14分)

外包公司面试题

题目1:编写一个函数,输入为一个字符率,将其逆序后输出
题目2:编写一个函数,统计在一个输入字符串中各个不同字符出现的频率

题目 3: 当前有如下 Json:

json

{"IP": "XXXXXXXXX","Port": "XXX","Info": {"name": "XXXXXXXX","phone": "XXXXX"}
}

请创建一个线程,接收来自192.168.8.1:8000的UDP报文,内容为上述Json。

解析报文内容,将其中的“Info”信息转发至报文指定的“IP”(IP地址)和“Port”(端口)上

C++软件开发工程师笔试题(NOKOV度量)

一、填空题(30分)

  1. 数组的分类主要是:____、____两类。(2分)

  2. 程序运行时的内存分区为:——、——、——、——、——。(5分)

  3. <

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/86727.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/86727.shtml
英文地址,请注明出处:http://en.pswp.cn/web/86727.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt QGraphics简述及例程 - QGraphicsView、QGraphicsScene和QGraphicsItem

Qt QGraphics简述及例程 引言一、简单例程二、关于坐标系问题 引言 QGraphics*是Qt框架中&#xff0c;主要用于处理2D图形项的显示、交互和管理的模块&#xff0c;包括QGraphicsView、QGraphicsScene和QGraphicsItem。提供了一套高效的场景-视图架构&#xff0c;适合开发复杂的…

代码随想录打卡第一天

文章讲解&#xff1a;代码随想录 视频讲解&#xff1a;手把手带你撕出正确的二分法 | 二分查找法 | 二分搜索法 | LeetCode&#xff1a;704. 二分查找_哔哩哔哩_bilibili class Solution { public:int search(vector<int>& nums, int target) {int left0;//左边界int…

时序数据库全面解析与对比

文章目录 1. 时序数据库概述1.1 时序数据特点1.2 时序数据库核心功能 2. 主流时序数据库对比2.1 InfluxDB2.2 Prometheus2.3 TimescaleDB2.4 OpenTSDB2.5 TDengine 3. 全方位对比3.1 功能对比3.2 性能对比3.3 适用场景对比3.4 社区与生态 4. 选型建议4.1 根据数据规模选择4.2 根…

【STM32CubeMX】ST官网MCU固件库下载及安装

用STM32CubeMX自带的Updater更新固件包会遇到各种幺蛾子&#xff08;如下图所示&#xff09;&#xff0c;所以干脆自己下载固件包&#xff0c;快速升级固件。 1. ST官网搜索你需要的MCU型号&#xff0c;并选择需要的固件版本&#xff0c;我这里是H7的MCU所以就找H7&#xff08;…

青少年编程与数学 01-012 通用应用软件简介 13 网上学习资源

青少年编程与数学 01-012 通用应用软件简介 13 网上学习资源 一、什么是网上学习资源&#xff08;一&#xff09;网上学习资源的基本定义&#xff08;二&#xff09;网上学习资源的工作原理&#xff08;三&#xff09;网上学习资源的类型 二、网上学习资源的重要意义&#xff0…

Python Selenium 忽略证书错误

文章目录 Python Selenium 忽略证书错误和忽略&#x1f527; **一、忽略 SSL 证书错误**1. **基础配置&#xff08;适用于 Chrome/Firefox&#xff09;**2. **高级场景&#xff1a;指定证书指纹**3. **浏览器兼容方案** &#x1f507; **二、隐藏 DevTools 监听提示**1. **禁用…

YOLOv8模型在RDK5开发板上的部署指南:.pt到.bin转换与优化实践

以下是针对在RDK5开发板(基于NVIDIA Jetson Orin平台)部署YOLOv8模型的详细技术指南,涵盖从模型转换、优化到部署的全流程: YOLOv8模型在RDK5开发板上的部署指南:.pt到.bin转换与优化实践 ——基于TensorRT的高性能嵌入式部署方案 第一章:技术背景与核心概念 1.1 RDK5开…

内网横向-工作流

一、信息收集阶段 操作 工具 / 命令 说明 系统基础信息采集 systeminfo、whoami /user 查看系统版本、用户 SID 等 域内用户 / 组查询 net user /domain、net group "domain admins" /domain 列出域用户及管理员组 域控及网络结构探测 nltest /dsgetdc、ip…

个人日记本小程序开发方案(使用IntelliJ IDEA)

个人日记本小程序开发方案(使用IntelliJ IDEA) 一、项目创建与环境配置 1. 新建项目 打开IDEA → New Project → JavaFX选择JDK 11+版本添加必要依赖:<!-- pom.xml --> <dependencies><dependency><groupId

react快速开始项目模板

代码仓库 gitee 创建项目 首先保证安装了node, 然后使用vite创建项目 vite npm create vite react-learn cd react-learn npm i 目录结构 一个完整的前端项目需要: 状态管理 在全局维护共有的状态(数据), 让页面组件之间共享数据, 我们使用pinia路由 路由让页面之间可以…

scrapy+django+pyecharts+mysql 实现西安游客行为分析系统大屏_用户画像_空间分析_路线智能推荐

项目地址 link 此处展示部分结果 思路 描述性统计 可视化大屏 用户画像&#xff08;聚类&#xff0c;情感分析&#xff09; 空间分析

AC-DC-AC间接变频电源设计方案(工频50Hz→20KHz)

AC-DC-AC间接变频电源设计方案(工频50Hz→20KHz) 一、方案分析与选择 1. 可选电路结构分析 方案1:二极管整流+Boost PFC+全桥逆变 优点: 输入功率因数高(>0.99)直流电压稳定可控输出波形质量好缺点: 电路复杂度较高成本相对较高方案2:晶闸管相控整流+电容滤波+半…

七天学完十大机器学习经典算法-09.梯度提升算法:预测艺术的精进之道

接上一篇《七天学完十大机器学习经典算法-08.K均值聚类&#xff1a;无监督学习的万能分箱术》 想象你在教一个学生解决复杂数学题&#xff1a;先让他做基础题&#xff0c;然后针对错误部分强化练习&#xff0c;再针对新错误继续训练...如此反复精进&#xff0c;直到完美掌握——…

数据库(MYsql)

一、Mysql概述 数据库&#xff1a;存储数据的仓库 &#xff0c;数据是有组织的进行存储 数据库管理系统&#xff1a;操纵和管理数据库的大型软件&#xff08;BBMS&#xff09; SQL&#xff1a;定义了一套操作关系型数据库统一标准&#xff0c;操作关系型数据库的编程语言 数…

【SpringBoot】Spring Boot + RESTful 技术实战指南

在当今的软件开发领域&#xff0c;Spring Boot 与 RESTful API 的结合已成为构建高效、可扩展 Web 应用的标配。本文将通过一个完整的项目示例&#xff0c;从知识铺垫到部署上线&#xff0c;带你一步步掌握 Spring Boot RESTful 的开发流程。 一、知识铺垫 1.1 Spring Boot …

安卓中静态和动态添加子 View 到容器

1.静态添加子View 在XML布局文件中直接定义子View&#xff1a; <!-- activity_main.xml --> <LinearLayoutxmlns:android"http://schemas.android.com/apk/res/android"android:id"id/container"android:layout_width"match_parent"a…

【NLP】自然语言项目设计03

目录 03模型构建 代码架构核心设计说明 初步构建模型并进行训练时遇到的一些问题 问题一&#xff1a;模型欠拟合 使用1 model - lstm 解释使用lstm时无法正常的进行cudnn加速 使用2 model - transformer 项目简介 训练一个模型&#xff0c;实现歌词仿写生成 任务类型&am…

WebRTC(十二):DTLS

在 WebRTC 中的作用 DTLS&#xff08;Datagram Transport Layer Security&#xff09;是 TLS 的 UDP 版本&#xff0c;在 WebRTC 中用于&#xff1a; 安全协商加密密钥对等验证&#xff08;基于 X.509 证书 fingerprint&#xff09;为 SRTP/SRTCP 提供密钥材料 WebRTC 不直接…

北大肖臻《区块链技术与应用》学习笔记

区块链学习笔记 \huge{区块链学习笔记} 区块链学习笔记 这是关于北京大学肖臻老师的《区块链技术与应用》课程的学习笔记。 BTC的数据结构 hash pointers&#xff1a;既保存结构体的对应地址位置&#xff08;指针&#xff09;&#xff0c;又保存结构体对应映射的hash值&#…

MongoDB 驱动升级性能测试报告

测试背景 将 MongoDB Java 驱动从 4.11.5 升级至 5.5.1&#xff0c;并配合 Reactor Core 3.8.0-M4 进行性能对比测试。测试主要围绕插入、查询、更新和删除四个核心操作进行。 环境配置 操作系统: Windows 11CPU: Intel Core™ i7-14700F, 28 核心, 2.10 GHzJDK: OpenJDK 21.…