2014年3月计算机等级考试二级C语言考前全真模拟试卷(二)

如果您发现本试卷没有包含本套题的全部小题,请尝试在页面顶部本站内搜索框搜索相关题目,一般都能找到。
13

关系规范理论是关系数据库进行逻辑设计的基础,这个理论最基本的要求是关系中的每个属性是

  • A.类型不变的                     B.宽度不变的                  
  • C.不可分割的                  D.互不相关的
16

在数据结构中,与所使用的计算机无关的是数据的

  • A.存储结构       B.物理结构           
  • C.逻辑结构           D.物理和存储结构
17

有以下程序

#define  P(a)  a+a

void F(int x)  

{ return(P(2)*x*x);}

main()

{ printf("%d\n",F(1+3)); }

程序的运行结果是

  • A.10              B.34
  • C.64               D.编译出错
18

以下程序的输出结果是

main()

{

   int k=4,m=1,p;

   p=func(k,m); printf("%d,",p);

   p=func(k,m); printf("%d\n",p);

}

func(int a,int b)

{

   static int m=0,i=2;

   i+=m+1;

   m=i+a+b;

   return(m);

}      

  • A.8,17             B.8,16   
  • C.8,20          D.8,8
20

有以下程序

main()

{ unsigned int a;

  int b=-1;

  • a=b;    printf("%u",a);    }    程序运行后的输出结果是
  • A.-1            B.65535   
  • C.32767             D.-32768
21

有以下程序

int f(int n)

{

   if(n==1

       return 1;

   else

       return f(n-1)+1;

}

main()

{

   int i,j=0;

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

       j+=f(i);

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

}

程序运行后的输出结果是

  • A.4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.3&nbsp;&nbsp;&nbsp;
  • C.2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1
22

面下程序段的运行结果是

char str[]="ABC",*p=str;

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

  • A.67&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.字符’C’的地址&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.字符’C’
23

有以下程序

#include "stdio.h"

main()

{ struct date

   {int year,month,day;}today;

   printf("%d\n",sizeof(struct date));

}

程序的运行结果是

  • A.6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.8
  • C.12&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.10
24

在位运算中,操作数左移一位,其结果相当于

  • A.操作数乘以2&nbsp;&nbsp;&nbsp;&nbsp;
  • B.操作数除以2&nbsp;&nbsp;&nbsp;
  • C.操作数除以4&nbsp;&nbsp;&nbsp;&nbsp;
  • D.操作数乘以4
26

有以下程序

#include 

#include 

int fun(int t)

{  int *p;

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

    *p=t; return *p;

}

main()

{  int a;

  • a = fun(8);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf("%d\n", a+fun(10));&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;程序的运行结果是
  • A.0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.10&nbsp;&nbsp;
  • C.18&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.出错
28

有以下程序段

#include "stdio.h"

main()

{  int j,i,k=0;

for(j=50;j<=60;j++)

{  if(!(k%10)) printf("\n");

for(i=2;i

break;

if(i>=j-1)

{  printf("%d",j);

k++;}

}

}

程序执行后输出的结果是

  • A.5359&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.5953&nbsp;
  • C.3595&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.9535
29

以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是

main()

{  int *p,*q,a,b;

p=&a;

printf("input a:");

scanf("%d",*p);

}

  • A.*p表示的是指针变量p的地址&nbsp;&nbsp;&nbsp;&nbsp;
  • B.*p表示的是变量a的值,而不是变量a的地址
  • C.*p表示的是指针变量p的值&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  • D.*p只能用来说明p是一个指针变量
30

设变量a是int型,f是int型,i是double型,则表达式10+a+i*f值的数据类型为

  • A.int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.float&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.double&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&
31

若有以下程序段(n所赋的是八进制数)

int m=32767, n=032767;

printf("%d,%o\n",m,n);

执行后的输出结果是

  • A.32767,32767&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.32767,032767&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  • C.32767,77777&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.32767,077777
33

在下述程序中,判断条件“i>j”共执行的次数是

main()

{  int i=0,j=10,k=2,s=0;

for(;;)

{  i+=k;

    if(i>j)

   { printf("%d",s);

       break;

   }s+=i;

 }

}

  • A.4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.7&nbsp;&nbsp;
  • C.5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.6
34

若int k=8;则执行下列程序后,变量k的正确结果是

main()

{  int k=8;

switch(k)

 { case 9:k+=1;

 case 10:k+=1;

 default:k+=1;

 case 11:k+=1;break;

}

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

}

  • A.12&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.1
  • C.10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.9
35

下列是用户自定义标识符的是

  • A._w1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.3_xy&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.LINE-3
36

设有如下说明

typedef struct

{  int n;

char c;

double x;

}STD;

则以下选项中,能正确定义结构体数组并赋初值的语句是

  • A.STD tt[2]={{1,’A’,62},{2,’B’,75}};&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.STD tt[2]={1,"A",62,2,"B",75};
  • C.struct tt[2]={{1,’A’},{2,’B’}};&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.struct tt[2]={{1,"A",62.5},{2,"B",75.0}};
40

有以下程序

#define F(X,Y)(X)*(Y)

main()

{  int a=3, b=4;

printf("%d\n", F(a++, ++b));

}

程序运行后的输出结果是

  • A.12&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.15
  • C.16&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.20
41

若有函数内部说明:int a[3][4];,则数组a中各元素

  • A.可在程序的运行阶段得到初值0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.可在程序的编译阶段得到初值0
  • C.不能得到确定的初值&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.可在程序的编译或运行阶段得到初值0
42

有以下程序

float fun(int x,int y)

{  return(x+y);}

main()

{  int a=2,b=5,c=8;

   printf("%3.0f\n",fun((int)fun(a+c,b),a-c));

}

程序的运行结果是

  • A.9&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.编译出错
  • C.21&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.9.0
43

若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为

  • A.4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.16&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs
44

以下叙述中错误的是

  • A.C语言源程序经编译后生成后缀为.obj的目标程序&nbsp;&nbsp;
  • B.C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件
  • C.用C语言编写的程序称为源程序,它以ASCII码形式存放在一个文本文件中
  • D.C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令
46

为了提高测试的效率,应该

  • A.随机选取测试数据&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.取一切可能的输入数据作为测试数据
  • C.在完成编码以后制定软件的测试计划&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.集中对付那些错误群集的程序
47

冒泡排序的时间复杂度为

  • A.O(n)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.O(n<SUP>2</SUP>)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.O(log<SUB>2</SUB>n)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.O(nlog<SUB>2</SUB>n)
48

程序调试的目的是

  • A.发现程序中的错误&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.改正程序中的错误&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.验证程序的正确性&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.改善软件的性能
49

开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称为

  • A.软件投机&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.软件危机&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.软件工程&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.软件产生
50

下列数据模型中,具有坚实理论基础的是

  • A.层次模型&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.网状模型&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.关系模型&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.以上3个都是
51

软件开发离不开系统环境资源的支持,其中必要的测试数据属于

  • A.硬件资源&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.通信资源&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C.支持软件&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.辅助资源
52

用链表表示线性表的优点是

  • A.便于随机存取&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.花费的存储空间较顺序存储少
  • C.便于插入和删除操作&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.数据元素的物理顺序与逻辑顺序相同
53

下列有关数据库的描述,正确的是

  • A.数据库是一个DBF文件&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B.数据库是一个关系
  • C.数据库是一个结构化的数据集合&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.数据库是一组文件