2022年嵌入式C高级编程笔试B. .pdf
《2022年嵌入式C高级编程笔试B. .pdf》由会员分享,可在线阅读,更多相关《2022年嵌入式C高级编程笔试B. .pdf(9页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、 试卷 B一、选择题( 35*2 )1. 语句 printf(st ) 的输出结果为( B )A st B st C s D s *2. 程序中定义以下宏 #define S(a,b) a*b 若定义 int area; 且令 area=S(3+1,3+4),则变量 area 的值为( A )A 10 B. 12 C. 21 D. 28 正确标识符 D A ?a B a=2 C a.3 D a-3 3. float a = 3.2;(int)a;printf(a = %d, n, a);打印什么,运行后a 的类型是( D)A. 3.000000, int B. 3, int C. 3.0 fl
2、oat D. 既不是 3,也不是3.000000 , float 4. 有以下代码:void func() int a; a+; printf(a = %dn, a); 那么变量a 储存在( A )A. 栈B. 堆C. 正文段D. 未初始化数据段5. 在 C语言中 , char型数据在内存中的存储形式是( D )A、补码 B、 反码 C、 原码 D、ASCII 码*6. 执行下列语句中,sum变量的值是( B ) int sum=0 for(int i=0;i10;i+,sum+=i); A 45 B 55 C 0 D 编译错误假如 p 指向整型变量x, 则( *p)+等价 B 名师资料总结
3、- - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - A p+ B x+ C*(p+) D&x+ 7. 为了避免嵌套的条件分支语句if-else的二义性, C语言规定: C程序中的else 总是与( C )组成配对关系。A. 缩排位置相同的if B. 在其之前未配对的if C. 在其之前未配对的最近的if D.同一行上的if 8. 设 A为存放(短)整型的一维数组,如果A的首地址为P,那么 A中第 i 个元素的地址为( B )。A.P+i*2 B.
4、 P+(i-1 )*2 C. P+ ( i-1 ) D. P+i 9. 有函数void func() static int c; c+; printf(%dn, c); 那么连续调用两次,打印的结果是?( B )A. 1, 1 B. 1, 2 C. 123495,123496(因为 c 没初始化,内部的值随机,第二次会比第一次加1)D. 123495, 123495(因为 c 没初始化,内部的值随机,并且,值不会增加)10. 如果有以下代码:char string = love me please; char *p = string; char *q = p + 4; *q+ = 0; pri
5、ntf(%s, p); printf(%s, q);分别打印:( B )A. love me please B. love me please C. love me please me please D. 因为常量字符串不能修改,会发生段错误11.free(p); 哪个是错误的( D )A. p 的值必须是malloc 的返回值B. 一个指针不能被连续free 两次C. free了 p 以后 p是野指针,应该置为NULL D. free了以后 p 的值会自动置为NULL ,所以 *p = 9会段错误名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - -
6、 - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - 12. 下列描述中不正确的是( C )。A. 字符型数组中可能存放字符串。B. 可以对字符型数组进行整体输入、输出。C. 可以对整型数组进行整体输入、输出。D. 不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。13. 不能把 Hello !赋给数组b 的语句是( B )。A. char b10=H, e, l , l , o,! ;B. char b 10; b=“Hello !”;C. char b10; strcpy(b,“Hello !”);D. char
7、 b10=“Hello !”;14. 对于循环队列,下列叙述中正确的 D A)队头指针是固定不变的 B)队头指针一定不大于队尾指针 C)队头指针一定小于队尾指针 D)队头指针可以大于队尾指针,也可以小于队尾指针15. 有以下程序#include main() int m=1,n=2,*p=&m,*q=&n,*r; r=p;p=q;q=r; printf(“%d,%d,%d n”,m,n,*p,*q); 程序运行后的输出结果为 B A)1,2,1,2 B)1,2,2, 1 C)2,1,2,1 D )2,1,1,2 16. 若有定义语句:int a410,*p,*q4;且 0=i4, 则错误的赋值
8、是: A A)p=a B)qi=ai C)p=ai D)p=&a21 17. 下面函数的功能是 A fun(char *a,char*b) while(*b=*a)!=0) a+;b+; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 9 页 - - - - - - - - - A将 a 所指字符串赋给b 所指空间B使指针 b 指向 a 所指字符串C将 a 所指字符串和b 所指字符串进行比较D检查 a 和 b 所指字符串中是否有018. 设有以下函数:void fun(i
9、nt n,char *s),则下面对函数指针的定义和赋值均正确的是 A A void (*pf)( );pf=fun ;B void *pf();pf=fun ;C void *pf();*pf=fun ;D void (*pf)(int ,char ); pf=&fun ;19. #include main ( ) int n=2,k=0; while(k+&n+2); printf(“%d %d n”,k,n); 程序运行后的输出结果是( )D A、0 2 B、1 3 C、 5 7 D、1 2 20. 有如下代码:struct test char *name; int age; ; int
10、 main() char myname = hello, world; struct test a1, a2; a1.name = myname; a1.age = 13; a2 = a1; a1.name0 = m; printf(%sn, a2.name); 输出的结果为: ( A )A. mello, world B. hello, world 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 9 页 - - - - - - - - - C. 编译无法通过D. 会段错
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年嵌入式C高级编程笔试B. 2022 嵌入式 高级 编程 笔试
限制150内