2009年4月全国计算机等级考试二级C笔试考前全真模拟试题(30)
来源:优易学  2011-11-3 12:33:10   【优易学:中国教育考试门户网】   资料下载   IT书店

  2009年4月,全国计算机等级二级C考试你准备好了没?考计算机等级二级C语言考试的朋友可以多关注一下青年人网站为大家整理的2009年4月,全国计算机等级二级C语言考前练习!希望对大家的备考有好的帮助!青年人网站祝各位考个好成绩!大家每天都来练习哦!不断的加强巩固!
  (1)在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:前序遍历、【1】遍历和后序遍历。
  答案:【1】中序
  评析:在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:前序遍历、中序遍历和后序遍历。
  前序遍历是指在访问根结点、遍历左子树与遍历右子树这三者中,首先访问根结点,然后遍历左子树,最后遍历右子树;并且遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。
  中序遍历指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历左子树,然后访问根结点,最后遍历右子树;并且遍历左、右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。
  后序遍历指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历右子树,然后访问根结点,最后遍历左子树;并且遍历左、右子树时,仍然先遍历右子树,然后访问根结点,最后遍历左子树。

  (2)结构化程序 设计 方法的主要原则可以概括为自顶向下、逐步求精、【2】和限制使用goto语句。
  答案:【2】模块化
  评析:结构化程序设计方法的主要原则可以概括为自项向下、逐步求精、模块化和限制使用goto语句。
  自顶向下:程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。不要一开始就过多追求众多的细节,先从最上层总目标开始设计,逐步使问题具体化。
  逐步求精:对复杂问题,应设计一些子目标作过度,逐步细化。
  模块化:一个复杂问题,肯定是由若干稍简单的问题构成。模块化是把程序要解决的总目标分解为分目标,再进一步分解为具体的小目标,把每个小目标称为一个模块。
  限制使用goto语句。

  (3)软件测试是保证软件质量的重要手段,而软件测试的主要和重要的测试方法是通过测试数据和【3】 的设计来实现。
  答案:【3】测试实例
  评析:进行软件测试时,应精心设计测试实例和选择测试数据,以对系统进行全面测试。

  (4)数据库系统的三级模式分别为【4】模式、内部级模式与外部级模式。
  答案:【4】概念 或 概念级
  评析:数据库系统在其内部具有三级模式及二级映射,三级模式分别是概念级模式、内部级模式和外部级模式。
  概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户(应用)公共数据视图。
  内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法,如数据存储的文件结构、索引、集簇及hash等存取方式与存取路径,内模式的物理性主要体现在 操作系统 及文件级上,.它还未深入到设备级上(如磁盘及磁盘操作)。
  外模式也称子模式或用户模式,它是用户的数据视图,也就是用户所见到的数据模式,它由概念模式推导面出。

  (5)数据字典是各类数据描述的集合,它通常包括5个部分,即数据项、数据结构、数据流、【5】和处理过程。
  答案:【5】数据存储
  评析:数据字典是各类数据描述的集合,它通常包括5个部分,即数据项,是数据的最小单位;数据结构,是若干数据项有意义的集合;数据流,可以是数据项,也可以是数据结构,表示某一处理过程的输入或输出;数据存储,处理过程中存取的数据,常常是手工凭证、手工文档或计算机文件;处理过程。

  (6)下面程序的输出是【6】。
  main()
  {int arr[10],i,k=O:
  for(i=0;i<10;i++)
  arr[i]=i;
  for(I=1;i<4;i++)
  k+=arr[I]+i;
  printf("%d\n",k);}
  答案:【6】12
  评析:本题通过第一个for循环将数组arr[O]-arr[9]分别赋值为0-9,通过第二个for循环的三次循环累加,求出结果为12,具体分析如下:
  i=l:k=0+arr[1]+l即k=2:
  i=2:k=2+arr[2]+2即k=6:
  i=3:k=6+arr[3]+3即k=12;

  (7)若a=10,b=20,则表达式!(a<b)的值是【7】。
  答案:【7】0
  评析:已知a=10,b=20,所以逻辑表达式a<b的值为true,即为1,在这个表达式前面有一个逻辑运算符!,表示反操作,所以整个语句的值应当为false,即为0。

  (8)有以下程序:
  int fa(int x){return x*x;}
  int fb(int x){return x*x*x;}
  int f(int(*f1)(),int(*f2)(),int x)
  {return f2(X)-n(x);}
  main()
  {int i;i=f(fa,fb,2);printf("%d\n",i);}
  程序运行后,输出结果是【8】。
  答案:【8】4
  评析:在主函数中调用函数f,函数f有三个参数,形参f1与f2分别是两个指向函数的指针。在f中执行r2(x)-f1(x),实际上是执行了fb(2).fa(2),故执行i=(fa,fb,2)后i的值为2^3-2^2=4。

  (9)下面程序的输出是【9】。
  main()
  {enum em{eml=3,em2=1,em3};
  char*aa[]={"AA","BB","CC","DD"};
  primf("%s%s%s\n",aa[eml],aa[em2],aa[em3]);
  }
  答案:【9】DDBBCC
  评析:c语言对枚举的定义规定:在枚举中声明的各个枚举元素,如果没有明确指出某个枚举元素的值,它的上一个元素存在并有明确值的情况下,这个枚举元素的值为其上一个元素的值+1。
  在本题中,没有明确说明枚举元素em3的值,则em3=em2+l=1+l=2,进而可知,在printf()打印函数中,要打印的数组元素是aa[3]、aa[1]、aa[2],因此最后的打印结果应当为"DDBBCC"。

  (10)若想通过以下输入语句使a=5.0,b=4,c=3,则输入数据的形式应该是【10】。
  int b,c;float a;
  scanf("%£%d,c=%d",&a,&b,&c)
  答案:【10】5.0,4,c=3

责任编辑:小草

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训