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,因为a,b,c三个变量都是浮点数,所以在B答案中其结果是0,因为在计算1/2是就是0,如果改成1/2.0就正确了。

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

3:下述程序执行后的输出结果是 
#include 
main() 

int x='f'; 
printf("%c\n",'a'+(x-'a'+1)); 

A.g 
B.h
C.i 
D.j 
参考答案:A

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

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

8:若main()函数带参数,参数个数最多是 
A.0 
B.1 
C.2 
D.3 
参考答案:C 只知道有定义形式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 
参考答案: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 
参考答案:A

12:
#define N 3
#define Y(n) ((N+1)*n)
则表达式2*(N+Y(5+1))的值是 
A.42 
B.48 
C.54 
D.出错 
参考答案:B Y(5+1) 传递过去的应该是6,而不是简单的把5+1给替换掉

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

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.字符 
参考答案: A

18:设struct 
{ short a; 
char b; 
float c; 
}cs; 
则sizeof(cs)的值是 
A.4 
B.5 
C.6 
D.7 
参考答案: D 字节对齐的话应该是8

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

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

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的线程模型。然后讨论进程内/外组件的差别。

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

虚拟函数表是在编译期就建立了,各个虚拟函数这时被组织成了一个虚拟函数的入口地址的数组.
而对象的隐藏成员--虚拟函数表指针是在运行期--也就是构造函数被调用时进行初始化的,这是实现多态的关键.

24:#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 ,输出结果: 
参考答案:6897 VC++6.0测试过
25:用两个栈实现一个队列的功能? 
参考答案:

设2个栈为A,B, 一开始均为空.入队: 
将新元素push入栈A;出队: 
(1)判断栈B是否为空; 
(2)如果不为空,则将栈A中所有元素依次pop出并push到栈B; 
(3)将栈B的栈顶元素pop出;这样实现的队列入队和出队的平摊复杂度都还是O(1), 
26:写一语句实现x是否为2的若干次幂的判断。
参考答案:!(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]))

嵌入式常见笔试题总结(3)相关推荐

  1. 嵌入式常见笔试题总结(2)

    预处理器(Preprocessor) 1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 2 ...

  2. 嵌入式常见笔试题总结

    预处理器(Preprocessor) 1. 用预处理指令#define声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 ...

  3. 嵌入式常见笔试题总结(6)

    一.常识理论题  1. 简述嵌入式操作系统有哪些,你用过哪几种,简述其特点.优势及劣势?(5分)       2. 请描述控制及提高嵌入式软件质量有哪些办法,在开发过程中怎么才能保证嵌入式软件 的可靠 ...

  4. 嵌入式常见笔试题总结(5)

    1. 如何在C中初始化一个字符数组. 这个问题看似很简单,但是我们要将最简单的问题用最严谨的态度来对待.关键的地方:初始化.字符型.数组.最简单的方法是char array[];.这个问题看似解决了, ...

  5. 嵌入式常见笔试题总结(4)

    1:用C语言实现大小端的测试 Int CheckCpu() { union { int a; char b; }c; c.a=1; if(c.b==1) printf("小端"): ...

  6. 嵌入式linux工程师 考试,嵌入式Linux工程师常见笔试题.doc

    嵌入式Linux工程师常见笔试题.doc 这些年,我既参加也组织了许多这种测试,在这过程中我意识到这些测试能为带面试者和被面试者提供许多有用信息,此外,撇开面试的压力不谈,这种测试也是相当有趣的. 从 ...

  7. 大厂常见笔试题 滑动窗口内数的和

    大厂常见笔试题,我以为出一个很难的题,结果出了一个基础题, 给你一个大小为n的整型数组和一个大小为k的滑动窗口,将滑动窗口从头移到尾,输出从开始到结束每一个时刻滑动窗口内的数的和. 样例 对于数组 [ ...

  8. java字符串笔试题_五道Java常见笔试题及答案汇总

    1.String和StringBuffer的区别? 答:Java平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据.这个String类提供了数 ...

  9. mysql @ $_mysql常见笔试题

    一.Mysql常见笔试题 1.Mysql 中有哪几种锁? (1)表级锁:开销小,加锁快.不会出现死锁,锁定粒度大,发生锁冲突的概率高,并发度低. (2)行级锁:开销大,加锁慢.会出现死锁,锁定粒度小, ...

最新文章

  1. pytorch 测试每一类_DeepFM全方面解析(附pytorch源码)
  2. Visual Studio 2013 中如何设置断点
  3. 拦截器读post参数导致接口post请求报错_vue中Axios的封装和API接口的管理
  4. tcp 和 dcp 的几大区别
  5. 计算机专业英语读书报告,英语读书报告怎么写
  6. java 数组扩容_Java数组扩容算法及Java对它的应用
  7. Spring Servlet 拦截器 过滤器
  8. python输出去掉空格
  9. windows internals(深入解析windows操作系统)笔记
  10. TeXworks 设置成默认用XeLaTeX排版
  11. 北上广,是程序员最好的归宿?
  12. JTT808、JTT1078、TJSATL主动安全踩坑记录
  13. 循环日程表递归法c语言,分治与递归——循环赛日程表
  14. Adv-Makeup:一种新颖不易察觉且可迁移的人脸识别攻击方法
  15. [Luogu5042/UOJ #100][国家集训队互测2015]丢失的题面/ydc的题面
  16. android5.1 rom互刷,一加2 代通刷 5.1.1 ROM刷机包 个人适配 附加高级设置 稳定
  17. 72. git jenkin实践二 ------ 中心服务器gitlab
  18. 揭秘VR全景背后的商业价值
  19. 美团点评2020校招测试方向笔试题
  20. 多张图片合成一张的ps技术

热门文章

  1. 解决: idea 修改 jsp 后,页面刷新无效
  2. 如何查看jar包的版本号?
  3. shell基础05 处理用户输入
  4. Netty自娱自乐之协议栈设计
  5. python与shell的3种交互方式介绍
  6. [ios]UITableViewCell自适应高度 【转】
  7. 不要错过路边的的风景
  8. 如何保证MongoDB的安全性? 1
  9. java api使用ElastichSearch指南
  10. Linux删除特殊字符文件