嵌入式软件工程师笔试题(含答案).txt26选择自信,就是选择豁达坦然,就是选择在名利面前岿然不动,就是选择在势力面前昂首挺胸,撑开自信的帆破流向前,展示搏击的风采。

选择题

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

正确答案B
解释(1/2)值为0,正确写法(1/2.0)

2:为了向二进制文件尾部增加数据,打开文件的方式应采用
A.″ab″
B.″rb+″
C.″wb″
D.″wb+″

r:打开一个bai文本文件只读
w:打开一个du文本文件只写
a:对一个文本文件zhi添加
rb:打开一个二进制文dao件只读
wb:打开一个二进制文件只写
ab:对一个二进制文件添加
r+:打开一个文本文件读/写
w+:生成一个文本文件读/写
a+:打开一个文本文件读/写
rb+:打开二进制文件读/写
wb+:生成二进制文件读/写
ab+:打开二进制文件读/写
如果用写方式打开一个文件,则原先该文件的任何内容会被抹掉,并开始一个新文件。如果不存在那个名字的文件,就生成一个文件。如果你想往文件的尾部再加写一个内容,就必须使用模式“a”。如果文件不存在,就返回出错信息。在打开 一个文件准备进行读操作是,该文件必须存在。如果文件不存在,返回一个出错信息。最后,打开一个读/写操作的文件,如果文件存在它不会被抹掉;如果文件不存在就生成一个文件。

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

记住几个关键的点 0 = 0x31 A = 0x41 a = 0x61
a 61
b 2
c 3
d 4
e 5
f 6
可否 ‘a’+(x-‘a’+1)) ‘a’ - ‘a’ x = 0x66 +1
A = g

4:C语言中,下列运算符优先级最高的是
A.!
B.%
C.>>
D.= =

优先级连接

5:数组定义为“ int a [ 4 ] ; ”,表达式 ( ) 是错误的。
A.*a
B.a [ 0 ]
C.a
D.a++

D

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

C

7:定义函数时,缺省函数的类型声明,则函数类型取缺省类型
A.void
B.char
C.float
D.int

答案D:
解释:

#include "stdio.h" typedef (* p_F)(void *,void *);sum(int a ,int b)
{return a+b;
}
int main()
{printf("%d",sum(1,2));
}

其中sum 确认缺了一个参数 这边默认是int类型

而 typedef (* p_F)(void *,void *); 定义了一个函数指针 但是类型也是没写,默认是int 型。

8:若main()函数带参数,参数个数最多是
A.0
B.1
C.2
D.3

答案C
int main(int argc,char* argv[])
也可以写成int main(int argc,char** argv)

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

要点:建议使用带参宏定义 后面的条件+()

假如不带 int a=13,b=94; MOD(b,a+4)
展开 94%13 + 4 相对于 94 - 13*7+4 = 7
选B

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

A == 为判断

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

记住一个原则 什么+±-在变量前面的 先自己±1 在变量后面的,执行完这条语句后再自己±1
看题
if(!( – a))x – ;
假如!0 条件为真 x – 变-1 ;
假如(!b)这个条件是假 执行else ++x ; x = 0;
答案A

12:设
#define N 3
#define Y(n) ((N+1)*n)
则表达式2*(N+Y(5+1))的值是
A.42
B.48
C.54
D.出错

直接解答
1种情况 2 *(3+ (3+1) * 5+1)
1种情况 2 *(3+ (3+1) * 6)
这边有个细节就是到底编译器对Y(5+1)是先执行还是先把数据加好再代入呢
这边是第一种情况!
选B

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

凡是碰到这样的 一定要确定指针是什么类型 ,这边是ch 是执向char类型的指针
这道题目可以变 很难的
答案是e 因为和print有关 。
比如来来来

找不到了 算了 ,下次在补上

14:下列转义字符中错误的是
A.′\000′
B.′\14′
C.′\x111′
D.′\2′

原理 /是啥 ?
复习下 优先级连接
参考答案:C error C2022: ‘273’ : too big for character

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

原理是 算术是乘除 关系是 赋值是=

答案:B

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

B

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


返回的是非0整数

18:设struct
{ short a;
char b;
float c;
}cs;
则sizeof(cs)的值是
A.4
B.5
C.6
D.8

原理:内存对齐

short 短整型 2
char 1
float 4
1+2还有+1 和后面的4对齐 总共是8
选:D

19:若变量已正确定义,表达式( j=3 , j++ )的值是
A.3
B.4
C.5
D.0

A 前面有讲

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

简答题

21:打印一个N*N的方阵,N为每边字符的个数( 3〈N〈20 ),要求最外层为“X”,第二层为“Y”,
从第三层起每层依次打印数字0,1,2,3,...
例子:当N =5,打印出下面的图形:
X X X X X
X Y Y Y X
X Y 0 Y X
X Y Y Y X
X X X X X
22:谈谈COM的线程模型。然后讨论进程内/外组件的差别。

看了一遍排在前面的答案,类似”进程是资源分配的最小单位,线程是CPU调度的最小单位“这样的回答感觉太抽象,都不太容易让人理解。
做个简单的比喻:

  • 进程=火车,线程=车厢线程在进程下行进(单纯的车厢无法运行)

  • 一个进程可以包含多个线程(一辆火车可以有多个车厢)

  • 不同进程间数据很难共享(一辆火车上的乘客很难换到另外一辆火车,比如站点换乘)

  • 同一进程下不同线程间数据很易共享(A车厢换到B车厢很容易)

  • 进程要比线程消耗更多的计算机资源(采用多列火车相比多个车厢更耗资源)进程间不会相互影响,
    一个线程挂掉将导致整个进程挂掉(一列火车不会影响到另外一列火车,但是如果一列火车上中间的一节车厢着火了,将影响到所有车厢)

  • 进程可以拓展到多机,进程最多适合多核(不同火车可以开在多个轨道上,同一火车的车厢不能在行进的不同的轨道上)

  • 进程使用的内存地址可以上锁,即一个线程使用某些共享内存时,其他线程必须等它结束,才能使用这一块内存。(比如火车上的洗手间)-“互斥锁”

  • 进程使用的内存地址可以限定使用量(比如火车上的餐厅,最多只允许多少人进入,如果满了需要在门口等,等有人出来了才能进去)-“信号量”

作者:知乎用户
链接:https://www.zhihu.com/question/25532384/answer/411179772
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

23:多态类中的虚函数表是Compile-Time,还是Run-Time时建立的?

多态类中的虚函数表是Compile-Time,还是Run-Time时建立的

24:#includevoid 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 ,输出结果:6897
25:用两个栈实现一个队列的功能?

1111
(C语言代码)[https://blog.csdn.net/weixin_40671425/article/details/83006485]

26:写一语句实现x是否为2的若干次幂的判断。
参考答案:!(X)&(X-1)

!(X)&(X-1)

27:解二次方程:a*x*x+b*x+c
int Quadratic( double a,double b,double c,double& x1,double& x2);
返回值:解的个数
28:如何判别一个数是unsigned。

#define issignal(x) ((x>=0 && ~x>=0) ? 1:0) //为1是无符号 为0有符号

29:执行下述程序的输出结果是  ABCDEFCDEFEF  。
#include
char b[]="ABCDEF";
main()
{char *bp;
for (bp=b;*bp;bp+=2)
printf("%s",bp);
printf("\n");
}
30:已知一个数组table,用一个宏定义,求出数据的元素个数。
参考答案:#define NTBL
#define NTBL (sizeof(table)/sizeof(table[0]))

ahua(大华面试题原题+详解)相关推荐

  1. 一周刷爆LeetCode,算法da神左神(左程云)耗时100天打造算法与数据结构基础到高级全家桶教程,直击BTAJ等一线大厂必问算法面试题真题详解 笔记

    一周刷爆LeetCode,算法大神左神(左程云)耗时100天打造算法与数据结构基础到高级全家桶教程,直击BTAJ等一线大厂必问算法面试题真题详解 笔记 教程与代码地址 P1 出圈了!讲课之外我们来聊聊 ...

  2. JVM 面试题 87 题详解

    目录 1.java中会存在内存泄漏吗,请简单描述. 2.64 位 JVM 中,int 的长度是多数? 3.Serial 与 Parallel GC 之间的不同之处? 4.32 位和 64 位的 JVM ...

  3. 【JNU】网络配置大题详解(E口与G口两种类型)

    [JNU]网络配置大题详解(E口与G口两种类型) E口与G口的不同之处 E口的SW1配置 G口的SW1配置 RT1配置 RT2配置 RT3配置 E口运行结果 G口运行结果 E口与G口的不同之处 如果你 ...

  4. 2020年 第11届 蓝桥杯 Java B组 省赛真题详解及小结【第1场省赛 2020.7.5】

    蓝桥杯 Java B组 省赛决赛 真题详解及小结汇总[2013年(第4届)~2021年(第12届)] 第11届 蓝桥杯-第1.2次模拟(软件类)真题-(2020年3月.4月)-官方讲解视频 说明:部分 ...

  5. 2020年 第11届 蓝桥杯 Java C组 省赛真题详解及小结【第1场省赛 2020.7.5】

    蓝桥杯 Java B组 省赛真题详解及小结汇总[2013年(第4届)~2020年(第11届)] 注意:部分代码及程序 源自 蓝桥杯 官网视频(历年真题解析) 郑未老师. 2013年 第04届 蓝桥杯 ...

  6. 2019年 第10届 蓝桥杯 Java B组 省赛真题详解及总结

    蓝桥杯 Java B组 省赛真题详解及小结汇总[2013年(第4届)~2020年(第11届)] 注意:部分代码及程序 源自 蓝桥杯 官网视频(历年真题解析) 郑未老师. 2013年 第04届 蓝桥杯 ...

  7. 2021年 第12届 蓝桥杯 Java B组 省赛真题详解及小结【第1场省赛 2021.04.18】

    蓝桥杯 Java B组 省赛决赛 真题详解及小结汇总[题目下载.2013年(第4届)~2020年(第11届)] CSDN 蓝桥杯 专栏 2013年 第04届 蓝桥杯 Java B组 省赛真题详解及小结 ...

  8. 第十三届蓝桥杯Python 大学B组真题详解

    第十三届蓝桥杯Python B组真题详解 试题A 排列字母 试题B 寻找整数 试题C 纸张尺寸 试题D 位数排序 试题E 蜂巢 试题F 消除游戏 试题G 全排列的价值 试题H 技能升级 试题I 最长不 ...

  9. c语言50到100套,c语言51-100套试题答案及详解.pdf

    c语言51-100套试题答案及详解 2 double ave=0.0; 第 51 套 试题答案及详解 3 *n=0; 4 for(i=0; i 5 ave /=N; /* 计算平均值 */ 一.程序填 ...

最新文章

  1. jmeter笔记(8)--关联
  2. 2017南京师范大学计算机学院录取名单,南京师范大学2017年硕士研究生复试成绩及录取名单的通知...
  3. 修而未复:说说WebLogic那修不完的Java反序列化漏洞
  4. 董小姐尴尬了?被判赔偿奥克斯1.67亿,格力回应已上诉
  5. [数据分析工具] Pandas 不可不知的功能(一)
  6. struts2学习一:搭建第一个struts2.5项目
  7. 初学视觉学习笔记----打开摄像头遇到的问题
  8. Wolfram|Alpha搜索引擎
  9. thinkPHP框架
  10. 三目表达式 java_Java 三目运算符表达式的一些问题
  11. 数字电路设计的基本方法有哪些
  12. java 8 stream 对集合的简单操作
  13. 中报业绩被华夏幸福拖累,“50元”的中国平安是否值得珍惜?
  14. 阿里IoT云VS腾讯IoT云,相互抄袭还是一女俩嫁?
  15. php调用shell执行scp,使用shell脚本自动执行scp文件传输
  16. 小米无线蓝牙耳机Air2 SE如何连接MacPro
  17. 相机标定与棋盘格标定
  18. 第二章 04 魔镜世界
  19. 低功耗、高性能智能开发主板MED3568
  20. P16-Windows与网络基础-本地安全策略

热门文章

  1. 水禅心的庭院,在暖暖的朝阳里,教清风识字,在意兴阑珊的
  2. 迅雷赚钱宝 红水晶矿机 WS1408 专用特制盒子 超级项目
  3. ModelSim使用技巧总结(入门向)
  4. 不同直播场景的CDN技术简析
  5. 收藏:优秀的个人博客
  6. python实现UDP打洞
  7. java double空值_Java Double NullPointerException
  8. android 动态contextmenu,Android中ContextMenu用法实例
  9. 诚迈科技走进上海国际嵌入式展,携手Arm加速智能视觉技术创新
  10. PHP CURL 爬取大众点评app中的点评