计算机等级考试二级C语言模拟试题及答案.docx

上传人:b****5 文档编号:6661753 上传时间:2023-01-08 格式:DOCX 页数:10 大小:19.87KB
下载 相关 举报
计算机等级考试二级C语言模拟试题及答案.docx_第1页
第1页 / 共10页
计算机等级考试二级C语言模拟试题及答案.docx_第2页
第2页 / 共10页
计算机等级考试二级C语言模拟试题及答案.docx_第3页
第3页 / 共10页
计算机等级考试二级C语言模拟试题及答案.docx_第4页
第4页 / 共10页
计算机等级考试二级C语言模拟试题及答案.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

计算机等级考试二级C语言模拟试题及答案.docx

《计算机等级考试二级C语言模拟试题及答案.docx》由会员分享,可在线阅读,更多相关《计算机等级考试二级C语言模拟试题及答案.docx(10页珍藏版)》请在冰豆网上搜索。

计算机等级考试二级C语言模拟试题及答案.docx

计算机等级考试二级C语言模拟试题及答案

计算机等级考试二级C语言模拟试题

(2)及答案

一、选择题(每题2分,共计70分)

1.已知一棵二叉树前序遍历和中序遍历分别为ABDEGCFH和DBGEACHF,则该二叉树的后序遍历为

A)GEDHFBCA

B)DGEBHFCA

C)ABCDEFGH

D)ACBFEDHG 

2.树是结点的集合,它的根结点数目是

A)有且只有1

B)1或多于1

C)0或1

D)至少2

3.如果进栈序列为e1,e2,e3,e4,则可能的出栈序列是

A)e3,e1,e4,e2

B)e2,e4,e3,e1

C)e3,e4,e1,e2

D)任意顺序

 4.在设计程序时,应采纳的原则之一是

A)不限制goto语句的使用

B)减少或取消注解行

C)程序越短越好

D)程序结构应有助于读者理解

   5.程序设计语言的基本成分是数据成分、运算成分、控制成分和

A)对象成分

B)变量成分

C)语句成分

D)传输成分

6.下列叙述中,不属于软件需求规格说明书的作用的是

A)便于用户、开发人员进行理解和交流

B)反映出用户问题的结构,可以作为软件开发工作的基础和依据

C)作为确认测试和验收的依据

D)便于开发人员进行需求分析 

7.下列不属于软件工程的3个要素的是

A)工具

B)过程

C)方法

D)环境 

8.单个用户使用的数据视图的描述称为

A)外模式

B)概念模式

C)内模式

D)存储模式 

   

 9.将E-R图转换到关系模式时,实体与联系都可以表示成

A)属性

B)关系

C)键

D)域 

10.SQL语言又称为

A)结构化定义语言

B)结构化控制语言

C)结构化查询语言

D)结构化操纵语言

11.下列叙述中正确的是

A)C语言编译时不检查语法

B)C语言的子程序有过程和函数两种

C)C语言的函数可以嵌套定义

D)C语言的函数可以嵌套调用

12.在C语言中,退格符是

A)\n

B)\t

C)\f

D)\b

13.以下叙述中正确的是

A)构成C程序的基本单位是函数

B)可以在一个函数中定义另一个函数

C)main()函数必须放在其他函数之前

D)所有被调用的函数一定要在调用之前进行定义

14.若已定义:

inta=25,b=14,c=19;以下三目运算符(?

)所构成语句的执行后a<=25&&b--<=2&&c?

printf("***a=%d,b=%d,c=%d\n",a,b,c):

printf("###a=%d,b=%d,c=%d\n",a,b,c);程序输出的结果是

A)***a=25,b=13,c=19

B)***a=26,b=14,c=19

C)###a=25,b=13,c=19

D)###a=26,b=14,c=19 

15.下列程序段的输出结果是

inta=1234;

floatb=123.456;

doublec=12345.54321;

printf("-,%2.1f,%2.1f",a,b,c);

A)无输出

B)12,123.5,12345.5

C)1234,123.5,12345.5

D)1234,123.4,1234.5

16.若运行以下程序时,从键盘输入ADescriptor(表示回车),则下面程序的运行结果是

#include

main()

{charc;

intv0=1,v1=0,v2=0;

do{switch(c=getchar())

{case′a′:

case′A′:

case′e′:

case′E′:

case′i′:

case′I′:

case′o′:

case′O′:

case′u′:

case′U′:

v1+=1;

default:

v0+=1;v2+=1;

}

}while(c!

=′\n′);

printf("v0=%d,v1=%d,v2=%d\n",v0,v1,v2);

}

A)v0=7,v1=4,v2=7

B)v0=8,v1=4,v2=8

C)v0=11,v1=4,v2=11

D)v0=13,v1=4,v2=12

17.设有以下程序段

intx=0,s=0;

while(!

x!

=0)s+=++x;

printf("%d",s);

A)运行程序段后输出0

B)运行程序段后输出1

C)程序段中的控制表达式是非法的

D)程序段执行无限次

18.执行下面的程序段后,变量k中的值为

intk=3,s[2];

s[0]=k;k=s[1]*10;

A)不定值

B)33

C)30

D)10

19.以下程序段的描述,正确的是

x=-1;

do

{x=x*x;}while(!

x);

A)是死循环

B)循环执行两次

C)循环执行一次

D)有语法错误

20.有如下程序段

inta=14,b=15,x;

charc=′A′;

x=(a&&b)&&(c<′B′);

执行该程序段后,x的值为

A)ture

B)false

C)0

D)1

21.下列程序执行后的输出结果是

voidfunc1(inti);

voidfunc2(inti);

charst[]="hello,friend!

";

voidfunc1(inti)

{printf("%c",st[i]);

if(i<3){i+=2;func2(i);}

}

voidfunc2(inti)

{printf("%c",st[i]);

if(i<3){i+=2;func1(i);}

}

main()

{inti=0;func1(i);printf("\n");}

A)hello

B)hel

C)hlo

D)hlm

22.以下函数返回a所指数组中最大值所在的下标值

fun(int*a,intn)

{inti,j=0,p;

p=j;

for(i=j;i

if(a[i]>a[p]);

return(p);

}

在下划线处应填入的内容是

A)i=p

B)a[p]=a[i]

C)p=j

D)p=i

23.以下程序的输出结果是#include

voidprt(int*x,int*y,int*z)

{printf("%d,%d,%d\n",++*x,++*y,*(z++));}

main()

{inta=10,b=40,c=20;

prt(&a,&b,&c);

prt(&a,&b,&c);

}

A)11,42,31

12,22,41

B)11,41,20

12,42,20

C)11,21,40

11,21,21

D)11,41,21

12,42,22 

24.有如下程序

main()

{chars[]="ABCD",*p;

for(p=s+1;p

}

该程序的输出结果是

A)ABCD

BCD

CD

D

B)A

B

C

D

C)B

C

D

D)BCD

CD

25.下列程序执行后的输出结果是

main()

{inta[3][3],*p,i;

p=&a[0][0];

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

printf("%d\n",a[1][2]);

}

A)3

B)6

C)9

D)随机数

26-30题没有

31.以下对结构体类型变量的定义中,不正确的是

A)typedefstructaa

{intn;

floatm;

}AA;

AAtdl;

B)#defineAAstructaa

AA{intn;

floatm;

}tdl;

C)struct

{intn;

floatm;

}aa;structaatdl;

D)struct

{intn;

floatm;

}tdl;

32.在下述程序中,判断i>j共执行的次数是

main()

{inti=0,j=10,k=2,s=0;

for(;;)

{i+=k;

if(i>j)

{printf("%d",s);

break;

}s+=i;

}

}

A)4

B)7

C)5

D)6

33.若有以下程序

#include

voidf(intn);

main()

{voidf(intn);

f(5);

}

voidf(intn)

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

则以下叙述中不正确的是

A)若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数f

B)若在主函数前对函数f进行说明,则在主函数和其后的其他函数中都可以正确调用函数f

C)对于以上程序,编译时系统会提示出错信息:

提示对f函数重复说明

D)函数f无返回值,所以可用void将其类型定义为无返回值型

34.以下程序的输出是

structst

{intx;int*y;}*p;

intdt[4]={10,20,30,40};

structstaa[4]={50,&dt[0],60,&dt[0],60,&dt[0],60,&dt[0]};

main()

{p=aa;

printf("%d\n",++(p->x));

}

A)10

B)11

C)51

D)60

35.有以下程序

#include

main()

{FILE*fp;inti=20,j=30,k,n;

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

fprintf(fp,"%d\n",i);fprintf(fp,"%d\n",j);

fclose(fp);

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

fscanf(fp,"%d%d",&k,&n);printf("%d%d\n",k,n);

fclose(fp);

}

程序运行后的输出结果是

A)2030

B)2050

C)3050

D)3020

二、填空题(每空2分,共计30分)

1.数据结构分为逻辑结构与存储结构,线性链表属于【1】。

2.在面向对象方法中,类之间共享属性和操作的机制称为【2】。

3.耦合和内聚是评价模块独立性的两个主要标准,其中【3】反映了模块内各成分之间的联系。

 

 4.一个项目具有一个项目主管,一个项目主管可管理多个项目,则实体“项目主管”与实体“项目”的联系属于【4】的联系。

 

 5.数据库设计分为以下6个设计阶段:

需求分析阶段、【5】、逻辑设计阶段、物理设计阶段、实施阶段、运行和维护阶段。

输入答案,中间不含空格:

 

6.以下程序的功能是从健盘输入若干学生的成绩,并输出最高成绩和最低成绩,当输入负数时结束。

请填空。

main()

{floatx,amax,amin;

scanf("%f",&x);

amax=x;

amin=x;

while(【6】)

{if(x>amax)

amax=x;

else

if【7】

amin=x;

elsescanf("%f",&x);

}

printf("\namax=%f\namin=%f\n",amax,amin);

 7.设在主函数中有以下定义和函数调用语句,且fun函数为void类型;请写出fun函数的首部【8】。

要求形参名为b。

main()

{doubles[10][22];

intn;┆

fun(s);

}

输入答案,中间不含空格:

8.下列程序的功能是输入一个整数,判断是否是素数,若为素数输出1,否则输出0,请填空。

main()

{inti,x,y=1;

scanf("%d",&x);

for(i=2;i<=x/2;i++)

if【9】{y=0;break;}

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

}

 9.下面程序的功能是将一个字符串str的内容颠倒过来,请填空。

#include

main()

{inti,j,【10】;charstr[]={"1234567"};

for(i=0,j=strlen(str)【11】;i

{k=str[i];str[i]=str[j];str[j]=k;}

printf("%s\n",str);

}

输入答案,中间不含空格:

10.以下程序可把输入的十进制数以十六进制数的形式输出,请填空。

main()

{charb[17]={"0123456789ABCDEF"};

intc[64],d,i=0,base=16;

longn;

printf("Enteranumber:

\n");scanf("%ld",&n);

do{c[i]=【12】;i++;n=n/base;}

while(n!

=0);

printf("Transmitenewbase:

\n");

for(--i;i>=0;--i)

{d=c[i];printf("%c",b【13】);}

printf("\n");

}

6.以下程序的功能是从健盘输入若干学生的成绩,并输出最高成绩和最低成绩,当输入负数时结束。

请填空。

main()

{floatx,amax,amin;

scanf("%f",&x);

amax=x;

amin=x;

while(【6】)

{if(x>amax)

amax=x;

else

if【7】

amin=x;

elsescanf("%f",&x);

}

printf("\namax=%f\namin=%f\n",amax,amin);

}  

 7.设在主函数中有以下定义和函数调用语句,且fun函数为void类型;请写出fun函数的首部【8】。

要求形参名为b。

main()

{doubles[10][22];

intn;┆

fun(s);

}

8.下列程序的功能是输入一个整数,判断是否是素数,若为素数输出1,否则输出0,请填空。

main()

{inti,x,y=1;

scanf("%d",&x);

for(i=2;i<=x/2;i++)

if【9】{y=0;break;}

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

 9.下面程序的功能是将一个字符串str的内容颠倒过来,请填空。

#include

main()

{inti,j,【10】;charstr[]={"1234567"};

for(i=0,j=strlen(str)【11】;i

{k=str[i];str[i]=str[j];str[j]=k;}

printf("%s\n",str);

}

10.以下程序可把输入的十进制数以十六进制数的形式输出,请填空。

main()

{charb[17]={"0123456789ABCDEF"};

intc[64],d,i=0,base=16;

longn;

printf("Enteranumber:

\n");scanf("%ld",&n);

do{c[i]=【12】;i++;n=n/base;}

while(n!

=0);

printf("Transmitenewbase:

\n");

for(--i;i>=0;--i)

{d=c[i];printf("%c",b【13】);}

printf("\n");

}

参考答案:

选择题:

 

1-10 BABDDDDABC

11-20 DDACCDBACD

21-30 CDBDBBACBC

31-40 CDCCA   

       

填空题:

1-5  存储结构继承内聚一对多||1∶N概念设计阶段

6-10 x>0a voidfun(doubleb[][22])||voidfun(doubleb[10][22])(x%i==0)k-1n%base[d]

11-12 6354-> 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 金融投资

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1