当前位置:才华咖 > 互联网计算机 > 计算机 > 计算机二级 > 2005年上半年全国计算机二级C语言笔试真题
手机版

2005年上半年全国计算机二级C语言笔试真题

来源:才华咖 阅读:1.37W 次

点击查看试题参考答案
  一、选择题((1)~(10)每小题2分,(11)~(50)每小题1分,共60分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分

2005年上半年全国计算机二级C语言笔试真题

(1)数据的存储结构是指______。

A.存储在外存中的数据

B.数据所占的存储空间量

C.数据在计算机中的顺序存储方式

D.数据的逻辑结构在计算机中的表示

(2)下列关于栈的描述中错误的是______。

A. 栈是先进后出的线性表

B.栈只能顺序存储

C.栈具有记忆作用

D.对栈的插入与删除操作中,不需要改变栈底指针

(3)对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是______。

A.冒泡排序为n/2

B.冒泡排序为n

C.快速排序为n

D.快速排序为n(n-1)/2

(4)对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为______。

2n

B.n/2

C.n

D.n+1

(5)下列对于线性链表的描述中正确的是______。

A. 存储空间不一定是连续,且各元素的存储顺序是任意的

B.存储空间不一定是连续,且前件元素一定存储在后件元素的前面

C.存储空间必须连续,且前件元素一定存储在后件元素的前面

D.存储空间必须连续,且各元素的存储顺序是任意的

(6)下列对于软件测试的描述中正确的是______。

A.软件测试的目的是证明程序是否正确

B.软件测试的目的是使程序运行结果正确

C.软件测试的目的是尽可能多地发现程序中的错误

D.软件测试的目的是使程序符合结构化原则

(7)为了使模块尽可能独立,要求______。

A. 模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强

B.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱

C.模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱

D.模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强

(8)下列描述中正确的是______。

A.程序就是软件

B.软件开发不受计算机系统的限制

C.软件既是逻辑实体,又是物理实体

D.软件是程序、数据与相关文档的集合

(9)数据独立性是数据库技术的重要特点之一,所谓数据独立性是指______。

A.数据与程序独立存放

B.不同的数据被存放在不同的文件中

C.不同的数据只能被对应的`应用程序所使用

D.以上三种说法都不对

(10)用树形结构表示实体之间联系的模型是______。

A.关系模型

B.网状模型

C.层次模型

D.以上三个都是

(11)算法具有五个特性,以下选项中不属于算法特性的是______。

A.有穷性

B.简洁性

C.可行性

D.确定性

(12)以下选项中可作为C语言合法常量的是______。

A.-80.

B.-080

C.-8e1.0

D.-80.0e

(13)以下叙述中正确的是______。

A.用C程序实现的算法必须要有输入和输出操作

B.用C程序实现的算法可以没有输出但必须要输入

C.用C程序实现的算法可以没有输入但必须要有输出

D.用C程序实现的算法可以既没有输入也没有输出

(14)以下不能定义为用户标识符的是______。

B._0

C._int

of

(15)以下选项中不能作为合法常量的是______。

A.1.234e04

B.1.234e0.4

C.1.234e+4

D.1.234e0

(16)数字字符0的ASCII值为48,若有以下程序

main()

{ char a='1',b='2 ';

printf("%c,",b++);

printf("%dn",b-a);

}

程序运行后的输出结果是______。

A. 3,2

B.50,2

C.2,2

D.2,50

(17)有以下程序

main()

{ int m=12,n=34;

printf("%d%d",m++,++n);

printf("%d%dn",n++,++m);

}

程序运行后的输出结果是______。

A.12353514

B.12353513

C.12343514

D.12343513

(18)有定义语句:int b;char c[10];,则正确的输入语句是______。

A. scanf("%d%s",&b,&c);

f("%d%s",&b, c);

f("%d%s",b, c);

D. scanf("%d%s",b,&c);

(19)有以下程序

main()

{ int m,n,p;

scanf("m=%dn=%dp=%d",&m,&n,&p);

printf("%d%d%dn",m,n,p);

}

若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,则正确的输入是______。

A.m=123n=456p=789

B.m=123 n=456 p=789

C.m=123,n=456,p=789

D.123 456 789

(20)有以下程序

main()

{ int a,b,d=25;

a=d/10%9;

b=a&&(-1);

printf("%d,%dn",a,b);

}

程序运行后的输出结果是______。

A)6,1

B.2,1

C.6,0

D.2,0

(21)有以下程序

main()

{

int i=1,j=2,k=3;

if(i++==1&&(++j==3||k++==3))

printf("%d %d %dn",i,j,k);

}

程序运行后的输出结果是______。

A.1 2 3

B.2 3 4

C. 2 2 3

D.2 3 3

(22)若整型变量a、b、c、d中的值依次为:1、4、3、2。则条件表达式a

A.1

B.2

C.3

D.4

(23)有以下程序

main()

{

int p[8]={11,12,13,14,15,16,17,18},i=0,j=0;

while(i++<7) if(p[i]%2) j+=p[i];

printf("%dn",j);

}

程序运行后的输出结果是______。

A.42

B.45

C.56

D.60

(24)有以下程序

main()

{

char a[7]="a0a0"; int i,j;

i=sizeof(a); j=strlen(a);

printf("%d %dn",i,j);

}

程序运行后的输出结果是______。

A.2 2

B.7 6

C.7 2

D.6 2

(25)以下能正确定义一维数组的选项是______。

a[5]={0,1,2,3,4,5};

a[]={0,1,2,3,4,5};

a={'A','B','C'};

a[5]="0123";

(26)有以下程序

int f1(int x,int y){return x>y?x:y;}

int f2(int x,int y){return x>y?y:x;}

main()

{

int a=4,b=3,c=5,d=2,e,f,g;

e=f2(f1(a,b),f1(c,d)); f=f1(f2(a,b),f2(c,d));

g=a+b+c+d-e-f;

printf("%d,%d,%dn",e,f,g);

}

程序运行后的输出结果是______。

A.4,3,7

B.3,4,7

C.5,2,7

D.2,5,7

(27)已有定义:char a[]="xyz",b[]={'x','y','z'};,以下叙述中正确的是______。

A.数组a和b的长度相同

B.a数组长度小于b数组长度

C.a数组长度大于b数组长度

D.上述说法都不对

(28)有以下程序

void f(int *x,int *y)

{

int t;

t=*x;*x=*y;*y=t;

}

main()

{

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

p=a;q=&a[7];

while(p

{f(p,q);p++;q--;}

for(i=0;i<8;i++)printf("%d,",a[i]);

}

程序运行后的输出结果是______。

A.8,2,3,4,5,6,7,1,

B.5,6,7,8,1,2,3,4,

C.1,2,3,4,5,6,7,8,

D.8,7,6,5,4,3,2,1,

(29)有以下程序

main()

{

int a[3][3],*p,i;

p=&a[0][0];

for(i=0;i<9;i++)p[i]=i;

for(i=0;i<3;i++)printf("%d",a[1][i]);

}

程序运行后的输出结果是______。

A.012

B.123

C.234

D.345

(30)以下叙述中错误的是______。

A.对于double类型数组,不可以直接用数组名对数组进行整体输入或输出

B.数组名代表的是数组所占存储区的首地址,其值不可改变

C.当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息

D.可以通过赋初值的方式确定数组元素的个数

(31)有以下程序

#define N 20

fun(int a[],int n,int m)

{ int i,j;

for(i=m;i>=n;i--)a[i+1]=a[i];

}

main()

{

int i,a[N]={1,2,3,4,5,6,7,8,9,10};

fun(a,2,9);

for(i=0;i<5;i++)printf("%d",a[i]);

}

程序运行后的输出结果是______。

A.10234

B.12344

C.12334

D.12234

(32)有以下程序

main()

{

int a[3][2]={0},(*ptr)[2],i,j;

for(i=0;i<2;i++) {ptr=a+i; scanf("%d",ptr); ptr++; }

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

{ for(j=0;j<2;j++) printf("-",a[i][j]);

printf("n");

}

}

若运行时输入:1 2 3<回车>,则输出结果是______。

A.产生错误信息

B.1 0

C.1 2

D.1 0

2 0 3 0 2 0

0 0 0 0 3 0

本文链接:https://www.caihuaka.com/jsjzs/erji/lxxx4.html

Copyright © 2024. 才华咖 All right reserved. 浙ICP备20120231号-3

文字美图素材,版权属于原作者。部分文章内容由网友提供推送时因种种原因未能与原作者联系上,若涉及版权问题,敬请原作者联系我们,立即处理。