2020年计算机二级《C语言程序设计》模拟题(2)

扫码手机阅读
用圣才电子书APP或微信扫一扫,在手机上阅读本文,也可分享给你的朋友。
评论(0

  为了便于考生复习备考,圣才学习网小编精心整理了计算机二级C语言程序设计模拟题,欢迎大家点击查看!更多计算机考试动态|模拟试题|历年真题请关注圣才学习网圣才计算机学习网


  2020年计算机二级《C语言程序设计》模拟题(2)


  1.有以下程序


  #include <stdio.h>

  #include <stdlib.h>

  void fun(int **s, int x[2][3])

  {

   **s =*(x[1]+1);

  }

  void main()

  {

   int a[2][3]={1,2,3,4,5,6},*p;

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

   fun(&p,a);

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

  }


  程序的运行结果是(  )。


  A.5


  B.2


  C.6


  D.3


  【答案】A


  【解析】malloc()函数的返回值是新分配的存储区的首地址,将该地址赋值给p指针,然后取p指针的地址,调用fun函数。fun函数中对指向指针的指针s指向的内存单元赋值,其中x[1]表示二维数组x的第二行的行地址,x[1]+1表示二维数组x的第二行第二列的地址,所以fun函数的功能是将二维数组x的第二行第二列的值,即x[1][1]赋值给**s,*s为p,所以**s代表*p,*p即为a[1][1],答案选择A选项。


  2.以下叙述中正确的是(  )。


  A.在C语言中,预处理命令行都以“#”开头


  B.预处理命令行必须位于C源程序的起始位置


  C.#include <stdio.h>必须放在C程序的开头


  D.C语言的预处理不能实现宏定义和条件编译的功能


  【答案】A


  【解析】 “编译预处理”就是在C编译程序对C源程序进行编译前,由编译预处理程序对这些编译预处理命令行进行处理的过程。A项正确,在C语言中,凡是以“#”号开头的行,都称为“编译预处理”命令行。B项错误,预处理命令行可以出现在程序的任何一行的开始部位,其作用一直持续到源文件的末尾;C项错误,#include <stdio.h>可以出现在程序的任意一行的开始部位;D项错误,预处理可以实现宏定义、条件编译和文件包含。答案选择A选项。


  3.下面结构体的定义语句中,错误的是(  )。


  A.struct ord {int x;int y;int z;} struct ord a;


  B.struct ord {int x;int y;int z;}; struct ord a;


  C.struct ord {int x;int y;int z;} a;


  D.struct {int x; int y;int z;} a;


  【答案】A


  【解析】C语言中结构体变量的定义有三种方法:①定义结构体类型的同时定义结构体变量,如C项;②使用无名结构体类型定义结构体变量,如D项;③先定义结构体类型,后定义结构体变量,如B项,A项错在分别定义结构体类型与结构体变量时需要用“;”隔开。故答案选择A选项。




计算机二级考试电子书

查看全部>>

小编工资已与此挂钩!一一分钱!求打赏↓ ↓ ↓

如果你喜欢本文章,请赐赏:

已赐赏的人
最新评论(共0条)评论一句