计算机二级选择题题库完整.docx 您所在的位置:网站首页 计算机二级考试选择题有多少题 计算机二级选择题题库完整.docx

计算机二级选择题题库完整.docx

2023-03-10 18:28| 来源: 网络整理| 查看: 265

计算机二级选择题题库完整.docx

《计算机二级选择题题库完整.docx》由会员分享,可在线阅读,更多相关《计算机二级选择题题库完整.docx(78页珍藏版)》请在冰豆网上搜索。

计算机二级选择题题库完整.docx

计算机二级选择题题库完整

无纸化试题第三套

1.下列叙述中正确的是( D )。

A)栈是"先进先出"的线性表

B)队列是"先进后出"的线性表

C)循环队列是非线性结构

D)有序线性表既可以采用顺序存储结构,也可以采用链式存储结构

2.支持子程序调用的数据结构是( A )。

A)栈

B)树

C)队列

D)二叉树

3.某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是( C )。

A)10

B)8

C)6

D)4

4.下列排序方法中,最坏情况下比较次数最少的是( D )。

A)冒泡排序

B)简单选择排序

C)直接插入排序

D)堆排序

5.软件按功能可以分为:

应用软件、系统软件和支撑软件(或工具软件)。

下面属于应用软件的是( C )。

A)编译程序

B)操作系统

C)教务管理系统

D)汇编程序

6.下面叙述中错误的是( A )

A)软件测试的目的是发现错误并改正错误

B)对被调试的程序进行"错误定位"是程序调试的必要步骤

C)程序调试通常也称为Debug

D)软件测试应严格执行测试计划,排除测试的随意性

7.耦合性和聚性是对模块独立性度量的两个标准。

下列叙述中正确的是( B )。

A)提高耦合性降低聚性有利于提高模块的独立性

B)降低耦合性提高聚性有利于提高模块的独立性

C)耦合性是指一个模块部各个元素间彼此结合的紧密程度

D)聚性是指模块间互相连接的紧密程度

8.数据库应用系统中的核心问题是( A )。

A)数据库设计

B)数据库系统设计

C)数据库维护

D)数据库管理员培训

9.有两个关系R,S如下:

由关系R通过运算得到关系S,则所使用的运算为( B )。

A)选择

B)投影

C)插入

D)连接

10.将E-R图转换为关系模式时,实体和联系都可以表示为( C )。

A)属性

B)键

C)关系

D)域

11.以下叙述中错误的是( A )。

A)使用三种基本结构构成的程序只能解决简单问题

B)结构化程序由顺序、分支、循环三种基本结构组成

C)C语言是一种结构化程序设计语言

D)结构化程序设计提倡模块化的设计方法

12.以下四个程序中,完全正确的是( B )。

A)#include

main();

{/*/programming/*/

printf("programming!

\n");}

B)#include

main()

{/*programming*/

printf("programming!

\n");}

C)#include

main()

{/*/*programming*/*/

printf("programming!

\n");}

D)include

main()

{/*programming*/

printf("programming!

\n");}

13.C源程序中不能表示的数制是(D )。

A)十六进制

B)八进制

C)十进制

D)二进制

14.以下选项中,能用作用户标识符的是( A )。

A) 0 

B)8 8

C)void

D)unsigned

15.若有定义语句:

intx=10;,则表达式x-=x+x的值为( C )。

A)0

B)-20

C)-10

D)10

16.有以下程序:

A

#include

main()

{ inta=1,b=0;

  printf("%d,",b=a+b);

  printf("%d\n",a=2*b);

A)1,2

B)1,0

C)3,2

D)0,0

17.有以下程序:

#include

main()

{  inta1,a2;charc1,c2;

  scanf("%d%c%d%c",&a1,&c1,&a2,&c2);

  printf("%d,%c,%d,%c",a1,c1,a2,c2);

}

若想通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出结果是:

12,a,34,b则正确的输入格式是(以下

代表空格,代表回车)( D)。

A)12

a34

b

B)12

a

34]

b

C)12,a,34,b

D)12a34b

18.若变量已正确定义,在if(W)printf("%d\n",k);中,以下不可替代W的是( A )。

A)ab+c

B)ch=getchar()

C)a==b+c

D)a++

19.有以下程序段:

#include

inta,b,c;

a=10;b=50;c=30;

if(a>b)a=b,b=c;c=a;

printf("a=%db=%dc=%d\n",a,b,c);

程序的输出结果是( B)。

A)a=10b=50c=30

B)a=10b=50c=10

C)a=10b=30c=10

D)a=50b=30c=50

20.下列叙述中正确的是(A )。

A)在switch语句中,不一定使用break语句

B)在switch语句中必须使用default

C)break语句必须与switch语句中的case配对使用

D)break语句只能用于switch语句

21.以下不构成无限循环的语句或语句组是(A  )。

A)n=0;

do{++n;}while(n

B)n=0;

while

(1){n++;}

C)n=10;

while(n);{n--;}

D)for(n=0,i=1;;i++)n+=i;

22.有以下程序:

#include

main()

{ intc=0,k;

  for(k=1;k

    switch(k)

    {default:

c+=k;

case2:

c++;break;

case4:

c+=2;break;

    }

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

}

程序运行后的输出结果是(C )。

A)7

B)5

C)3

D)9

23.有以下程序:

#include

intf(intx,inty)

{return((y-x)*x);}

main()

{inta=3,b=4,c=5,d;

d=f(f(a,b),f(a,c));

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

}

程序运行后的输出结果是( D )。

A)7

B)10

C)8

D)9

24.若有定义语句:

doublea,*p=&a;以下叙述中错误的是( A )。

A)定义语句中的*号是一个间址运算符

B)定义语句中的*号是一个说明符

C)定义语句中的p只能存放double类型变量的地址

D)定义语句中,*p=&a把变量a的地址作为初值赋给指针变量p

25.若有定义语句:

doublex,y,*px,*py;执行了px=&x;py=&y;之后,正确的输入语句是( A )。

A)scanf("%lf%le",px,py);

B)scanf("%f%f"&x,&y);

C)scanf("%f%f",x,y);

D)scanf("%lf%lf",x,y);

26.以下定义数组的语句中错误的是( B )。

A)intnum[][3]={{1,2},3,4,5,6};

B)intnum[2][4]={{1,2},{3,4},{5,6}};

C)intnum[]={1,2,3,4,5,6};

D)intnum[][4]={1,2,3,4,5,6};

27.有以下程序:

#include

voidfun(inta,intb)

{ intt;

  t=a;a=b;b=t;

}

main()

{ intc[10]={1,2,3,4,5,6,7,8,9,0},i;

  for(i=0;i

  for(i=0;i

  printf("\n");

}

程序的运行结果是( A )。

A)1,2,3,4,5,6,7,8,9,0,

B)2,1,4,3,6,5,8,7,0,9,

C)0,9,8,7,6,5,4,3,2,1,

D)0,1,2,3,4,5,6,7,8,9,

28.有以下程序:

#include

main()

{intx[3][2]={0},i;

for(i=0;i

printf("%3d%3d%3d\n",x[0][0],x[0][1],x[1][0]);

}

若运行时输入:

246,则输出结果为( A )。

A)204

B)200

C)240

D)246

29.有以下程序段:

#include

intj;floaty;charname[50];

scanf("%2d%f%s",&j,&y,name);

当执行上述程序段,从键盘上输入555667777abc后,y的值为( A )。

A)566.0

B)55566.0

C)7777.0

D)566777.0

30.下列语句组中,正确的是( A )。

A)char*s;s="Olympic";

B)chars[7];s="Olympic";

C)char*s;s={"Olympic"};

D)chars[7];s={"Olympic"};

31.有以下函数:

intfun(char*s)

{char*t=s;

while(*t++);

return(t-s);

}

该函数的功能是( C )

A)计算s所指字符串的长度

B)比较两个字符串的大小

C)计算s所指字符串占用存字节的个数

D)将s所指字符串复制到字符串t中

32.有以下程序(注:

字符a的ASCII码值为97):

#include

main()

{ char*s={"abc"};

  do

  { printf("%d",*s%10);++s;}

  while(*s);

}

程序运行后的输出结果是( A )。

A)789

B)abc

C)7890

D)979899

33.设有如下函数定义:

#include

intfun(intk)

{ if(k

  elseif(k==1)return1;

  elsereturnfun(k-1)+1;

}

若执行调用语句:

n=fun(3);,则函数fun总共被调用的次数是( B )。

A)2

B)3

C)4

D)5

34.有以下程序:

#include

intf(intn);

main()

{ inta=3,s;

  s=f(a);s=s+f(a);printf("%d\n",s);

}

intf(intn)

{ staticinta=1;

  n+=a++;

  returnn;

}

程序运行后的输出结果是( A )。

A)9

B)8

C)7

D)10

35.设有定义:

structcomplex

{ intreal,unreal;}data1={1,8},data2;

则以下赋值语句中错误的是( A )。

A)data2=(2,6);

B)data2=data1;

C)data2.real=data1.real;

D)data2.real=data1.unreal;

36.有以下程序:

#include

structS{intn;inta[20];};

voidf(structS*p)

{inti,j,t;

for(i=0;i

n-1;i++)

  for(j=i+1;j

n;j++)

    if(p->a[i]>p->a[j]){ t=p->a[i];p->a[i]=p->a[j];p->a[j]=t;}

}

main()

{inti;structSs={10,{2,3,1,6,8,7,5,4,10,9}};

f(&s);

for(i=0;i

}

程序运行后的输出结果是(C  )。

A)2,3,1,6,8,7,5,4,10,9,

B)10,9,8,7,6,5,4,3,2,1,

C)1,2,3,4,5,6,7,8,9,10,

D)10,9,8,7,6,1,2,3,4,5,

37.有以下程序:

#include

#include

typedefstruct{charname[9];charsex;intscore[2];}STU;

STUf(STUa)

{ STUb={"Zhao",'m',85,90};

  inti;

  strcpy(a.name,b.name);

  a.sex=b.sex;

  for(i=0;i

  returna;

}

main()

{ STUc={"Qian",'f',95,92},d;

  d=f(c);

  printf("%s,%c,%d,%d,",d.name,d.sex,d.score[0],d.score[1]);

  printf("%s,%c,%d,%d\n",c.name,c.sex,c.score[0],c.score[1]);

}

程序运行后的输出结果是( A )。

A)Zhao,m,85,90,Qian,f,95,92

B)Zhao,m,85,90,Zhao,m,85,90

C)Qian,f,95,92,Qian,f,95,92

D)Qian,f,95,92,Zhao,m,85,90

38.以下关于宏的叙述中正确的是( A )。

A)宏替换没有数据类型限制

B)宏定义必须位于源程序中所有语句之前

C)宏名必须用大写字母表示

D)宏调用比函数调用耗费时间

39.设有以下语句:

inta=1,b=2,c;

c=a^(b

执行后,c的值为( B )。

A)7

B)9

C)8

D)6

40.有以下程序:

#include

main()

{ FILE*fp;inta[10]={1,2,3},i,n;

  fp=fopen("d1.dat","w");

  for(i=0;i

  fprintf(fp,"\n");

  fclose(fp);

  fp=fopen("d1.dat","r");

  fscanf(fp,"%d",&n);

  fclose(fp);

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

}

程序的运行结果是( D )。

A)321

B)12300

C)1

D)123

选择题题库4

1.下列数据结构中,属于非线性结构的是( C )。

A)循环队列

B)带链队列

C)二叉树

D)带链栈

2.下列数据结构中,能够按照"先进后出"原则存取数据的是( B )。

A)循环队列

B)栈

C)队列

D)二叉树

3.对于循环队列,下列叙述中正确的是( D )。

A)队头指针是固定不变的

B)队头指针一定大于队尾指针

C)队头指针一定小于队尾指针

D)队头指针可以大于队尾指针,也可以小于队尾指针

4.算法的空间复杂度是指( A )。

A)算法在执行过程中所需要的计算机存储空间

B)算法所处理的数据量

C)算法程序中的语句或指令条数

D)算法在执行过程中所需要的临时工作单元数

5.软件设计中划分模块的一个准则是( B )。

A)低聚低耦合

B)高聚低耦合

C)低聚高耦合

D)高聚高耦合

6.下列选项中不属于结构化程序设计原则的是( A )。

A)可封装

B)自顶向下

C)模块化

D)逐步求精

7.软件详细设计生产的图如下:

该图是( C )

A)N-S图

B)PAD图

C)程序流程图

D)E-R图

8.数据库管理系统是( B )。

A)操作系统的一部分

B)在操作系统支持下的系统软件

C)一种编译系统

D)一种操作系统

9.在E-R图中,用来表示实体联系的图形是( C )。

A)椭圆形

B)矩形

C)菱形

D)三角形

10.有三个关系R、S和T如下:

则关系T是由关系R和S通过某种操作得到,该操作为( D )。

A)选择

B)投影

C)交

D)并

11.计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是( A )。

A)C语言程序仅可以编译执行

B)C语言程序仅可以解释执行

C)C语言程序既可以编译执行又可以解释执行

D)以上说法都不对

12.以下叙述中错误的是( A )。

A)用户所定义的标识符允许使用关键字

B)用户所定义的标识符应尽量做到"见名识意"

C)用户所定义的标识符中,大、小写字母代表不同标识

D)用户所定义的标识符必须以字母或下划线开头

13.若有说明语句:

charc='\72';则变量c( A )。

A)包含1个字符

B)包含2个字符

C)包含3个字符

D)说明不合法,c的值不确定

14.现有定义inta;doubleb;floatc;chark;,则表达式a/b+c-k值的类型为( B )。

A)int

B)double

C)float

D)char

15.以下定义语句中正确的是( B )。

A)inta=b=0;

B)charA=65+1,b=′b′;

C)floata=1,*b=&a,*c=&b;

D)doublea=0.0;b=1.1

16.若在定义语句inta,b,c,*p=&c;之后,接着执行以下选项中的语句,则能正确执行的语句是( D )。

A)scanf("%d",a,b,c);

B)scanf("%d%d%d",a,b,c);

C)scanf("%d",&p);

D)scanf("%d",p);

17.以下程序的运行结果是( B )。

intk=0;

voidfun(intm)

{ m+=k;k+=m;printf("m=%dk=%d",m,k++);}

main()

{ inti=4;

fun(i++);printf("i=%dk=%d\n",i,k);

}

A)m=4 k=5 i=5 k=5

B)m=4 k=4 i=5 k=5

C)m=4 k=4 i=4 k=5

D)m=4 k=5 i=4 k=5

18.在执行下述程序时,若从键盘输入6和8,则结果为( B )。

main()

{ inta,b,s;

scanf("%d%d",&a,&b);

s=a;

if(a

s=b;

s*=s;

printf("%d",s);}

A)36

B)64

C)48

D)以上都不对

19.有以下程序:

main()

{ intk=5,n=0;

while(k>0){switch(k){

default:

break;

case1:

n+=k;

case2:

case3:

n+=k;

}

k--;

}

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

}

程序运行后的输出结果是( D )。

A)0

B)4

C)6

D)7

20.有以下程序:

#include

main(){intx;

scanf("%d",&x);

if(x

if(x!

=10)printf("%d\n",x);

}

程序运行时,输入的值在哪个围才会有输出结果( B )。

A)不等于10的整数

B)大于3且不等10的整数

C)大于3或等于10的整数

D)小于3的整数

21.有以下程序:

#include

main(){inta=1,b=0;

printf("%d,",b=a+b);

printf("%d\n",a=2*b)}

程序运行后的输出结果是( D )。

A)0,0

B)1,0

C)3,2

D)1,2

22.有以下程序:

main(){intnum[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},i,j;

for(i=0;i

for(j=    ;j

printf("\n");

}

}

若要按以下形式输出数组右上半三角

1 2 34

 6 7 8

  1112

    16

则在程序下划线处应填入的语句是( C )。

A)i-1

B)i+1

C)i

D)4-i

23.以下程序段中,与语句:

k=a>b?

(b>c?

1:

0):

0;功能相同的是( A )。

A)if((a>b)&&(b>c))k=1;

elsek=0;

B)if((a>b)‖(b>c))k=1;

elsek=0;

C)if(a

elseif(b

D)if(a>b)k=1;

elseif(b>c)k=1;

elsek=0;

24.有以下程序:

voidss(char*s,chart)

{ while(*s)

{ if(*s==t)*s=t-a+A;

s++;}}

main()

{ charstr1[100]="abcddfefdbd



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有