无忧首页企业系统我的无忧
无忧服务:
兼职活动培训
娱乐交友:
交友社区资讯
全职实习:
实习暑假寒假
微信号:school51
扫一下,立即关注
加关注
在线支付,立省10元
下载新版APP
===大学生成长生活平台===

2013年计算机二级考试C语言第十三章课后题及参考答案

2013-03-18来源/作者:卫凯点击次数:624

第十三章 编译预处理和动态存储分配

  一、选择题

  12.1 以下程序的输出结果是

  A) 15

  B) 100

  C) 10

  D) 150

  #define MIN(x,y) (x)<(y)?(x):(y)

  main()

  { int i,j,k;

  i=10; j=15; k=10*MIN(i,j);

  printf("%d\\n",k);

  }

  答案:A

  13.2 以下程序中的for循环执行的次数是

  A) 5

  B) 6

  C) 8

  D) 9

  #define N 2

  #define M N+1

  #define NUM (M+1)*M/2

  main()

  { int i;

  for(i=1; i<=NUM; i++);

  }

  答案:C

  13.3 以下程序的输出结果是

  A) 11

  B) 12

  C) 13

  D) 15

  #include "stdio.h"

  #define FUDGF(y) 2.84+y

  #define PR(a) printf("%d",(int)(a))

  #define PRINT1(a) PR(a); putchar(\’\\n\’)

  main()

  { int x=2;

  PRINT1(FUDGF(5)*x);

  }

  答案:B

计算机二级C语言章节练习在线测试
第13章 编译预处理和动态存储分配 马上检测

  13.4 以下程序的输出结果是

  A) 1

  B) 7

  C) 9

  D)11

  fut(int **s,int p[2][3])

  { **s=p[1][1]; }

  main()

  { int a[2][3]={1,3,5,7,9,11},*p;

  p=(int *) malloc(sizeof(int));

  fut(&p,a);

  printf("%d\\n",*p);

  }

  答案:C

  13.5 若要使指针变量p指向一个double类型的动态存储单元,在下划线处应填入

  A) double

  B) double *

  C) (* double)

  D) (double *)

  double *p;

  p=_____malloc(sizeof(double));

  答案:D

  13.6 以下程序的输出结果是

  A) 11.10

  B) 12.00

  C) 21.10

  D) 1.10

  void fun(float *p1,float *p2,float *s)

  { s=(float *)calloc(1,sizeof(float));

  *s=*p1+*p2++;

  }

  main()

  { float a[2]={1.1,2.2},b[2]={10.0,20.0},*s=a;

  fun(a,b,s);

  printf("%5.2f\\n",*s);

  }

  答案:D

  13.7 以下叙述中正确的是

  A) 用#include包含的头文件的后缀不可以是“.a”。

  B) 若一些源程序中包含某个头文件;当该头文件在错时,只需对该头文件进行修改,包含此头文件所有源程序不必重新进行编译。

  C) 宏命令行可以看做是一行C语句。

  D) C编译中的预处理是在编译之前进行的。

  答案:D

计算机二级C语言章节练习在线测试
第13章 编译预处理和动态存储分配 马上检测

  二、填空题

  13.8 以下程序的输出结果是_____。

  #define PR(ar) printf("ar=%d ",ar)

  main()

  { int j,a[]={1,3,5,7,9,11,13,15},*p=a+5;

  for(j=3; j; j--)

  tch(j)

  { case 1:

  case 2:PR(*p++); break;

  case 3:PR(*(--p));

  }

  }

  答案:ar=9 ar=9 ar=11

  13.9 下面程序调用getone函数开辟一个动态存储单元,调用assone函数把数据输入此动态存储单元,

  调用outone函数输出此动态存储单元中的数据。请填空。

  #include "stdio.h"

  getone(int **s)

  { *s=(____)malloc(sizeof(int)); }

  assone(int *s)

  { scanf("%d",_____); }

  outone (int *b)

  { printf("%d\\n",_____); }

  main()

  { int *p;

  getone(&p); assone(p); outone(p);

  }

  答案:int *s *b

计算机二级C语言章节练习在线测试
第13章 编译预处理和动态存储分配 马上检测





相关阅读



关于我们 | 联系我们 | 用户指南 | 网站地图 | 意见建议 | 会员注册 | 用户协议 | 隐私政策