二级c语言考试试题.docx

上传人:b****6 文档编号:8599092 上传时间:2023-02-01 格式:DOCX 页数:17 大小:33.86KB
下载 相关 举报
二级c语言考试试题.docx_第1页
第1页 / 共17页
二级c语言考试试题.docx_第2页
第2页 / 共17页
二级c语言考试试题.docx_第3页
第3页 / 共17页
二级c语言考试试题.docx_第4页
第4页 / 共17页
二级c语言考试试题.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

二级c语言考试试题.docx

《二级c语言考试试题.docx》由会员分享,可在线阅读,更多相关《二级c语言考试试题.docx(17页珍藏版)》请在冰豆网上搜索。

二级c语言考试试题.docx

二级c语言考试试题

9月全国计算机级别考试二级笔试试卷

 

C语言程序设计

(考试时间90分钟,满分100分)

一、选取题(

(1)—(10)、(21)—(40)每题2分,(11)—(20)每题1分,共70分)

(1)下列数据构造中,属于非线性构造是

A)循环队列

B)带链队列

C)二叉树

D)带链栈

(2)下列数据成果中,可以按照“先进后出”原则存取数据是

A)循环队列

B)栈

C)队列

D)二叉树

(3)对于循环队列,下列论述中对的是

A)队头指针是固定不变

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

C)队头指针一定不大于队尾指针

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

(4)算法空间复杂度是指

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

B)算法所解决数据量

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

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

(5)软件设计中划分模块一种准则是

A)低内聚低耦合

B)高内聚低耦合

C)低内聚高耦合

D)高内聚高耦合

(6)下列选项中不属于构造化程序设计原则是

A)可封装

D)自顶向下

C)模块化

D)逐渐求精

(7)软件详细设计产生图如下:

该图是

A)N-S图

B)PAD图

C)程序流程图

D)E-R图

(8)数据库管理系统是

A)操作系统一某些

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

C)一种编译系统

D)一种操作系统

(9)在E-R图中,用来表达实体联系图形是

A)椭圆图

B)矩形

C)菱形

D)三角形

(10)有三个关系R,S和T如下:

   

   其中关系T由关系R和S通过某种操作得到,该操作为

A)    选取

B)     投影

C)    交

D)    并

(11)如下论述中对的是

A)程序设计任务就是编写程序代码并上机调试

B)程序设计任务就是拟定所用数据构造

C)程序设计任务就是拟定所用算法

D)以上三种说法都不完整

(12)如下选项中,能用作顾客标记符是

A)void

B)8_8

C)_0_

D)unsigned

(13)阅读如下程序

#include

main()

{intcase;floatprintF;

printf(“请输入2个数:

”);

scanf(“%d%f”,&case,&pjrintF);

printf(“%d%f\n”,case,printF);

}

该程序编译时产生错误,其出错因素是

A)定义语句出错,case是核心字,不能用作顾客自定义标记符

B)定义语句出错,printF不能用作顾客自定义标记符

C)定义语句无错,scanf不能作为输入函数使用

D)定义语句无错,printf不能输出case值

(14)表达式:

(int)((double)9/2)-(9)%2值是

A)0

B)3

C)4

D)5

(15)若有定义语句:

intx=10;,则表达式x-=x+x值为

A)-20

B)-10

C)0

D)10

(16)有如下程序

#include

main()

{inta=1,b=0;

printf(“%d,”,b=a+b);

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

}

程序运营后输出成果是

A)0,0

B)1,0

C)3,2

D)1,2

17)设有定义:

inta=1,b=2,c=3;,如下语句中执行效果与其他三个不同是

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

B)if(a>b){c=a,a=b,b=c;}

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

D)if(a>b){c=a;a=b;b=c;}

(18)有如下程序

#include

main()

{intc=0,k;

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

switch(k)

{default:

c+=k

case2:

c++;break;

case4:

c+=2;break;

}

printf(“%d\n”,c);

}

程序运营后输出成果是

A)3

B)5

C)7

D)9

(19)如下程序段中,与语句:

k=a>b?

(b>c?

1:

0):

0;功能相似是

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

elsek=0;

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

elsek=0;

C)if(a<=b)k=0;

elseif(b<=c)k=1;

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

elseif(b>c)k=1;

elsek=0;

20)有如下程序

#include

main()

{chars[]={“012xy”};inti,n=0;

for(i=0;s[i]!

=0;i++)

if(s[i]>=’a’&&s[i]<=’z’)n++;

printf(“%d\n”,n);

}

程序运营后输出成果是

A)0

B)2

C)3

D)5

(21)有如下程序

#include

main()

{intn=2,k=0;

while(k++&&n++>2);

printf(“%d%d\n”,k,n);

}

程序运营后输出成果是

A)02

B)13

C)57

D)12

(22)有如下定义语句,编译时会浮现编译错误是

A)chara=’a’;

B)chara=’\n’;

C)chara=’aa’;

D)chara=’\x2d’;

(23)有如下程序

#include

main()

{charc1,c2;

c1=’A’+’8’-‘4’;

c2=’A’+’8’-‘5’;

printf(“%c,%d\n”,c1,c2);

}

已知字母AASCII码为65,程序运营后输出成果是

A)E,68

B)D,69

C)E,D

D)输出无定值

(24)有如下程序

#include

voidfun(intp)

{intd=2;

p=d++;printf(“%d”,p);}

main()

{inta=1;

fun(a);printf(“%d\n”,a);}

程序运营后输出成果是

A)32

B)12

C)21

D)22

(25)如下函数findmax拟实当前数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能

#defineMIN-

intfindmax(intx[],intn)

{inti,max;

for(i=0;i

{max=MIN;

if(max

returnmax;

}

导致错误因素是

A)定义语句inti,max;中max未赋初值

B)赋值语句max=MIN;中,不应给max赋MIN值

C)语句if(max

D)赋值语句max=MIN;放错了位置

(26)有如下程序

#include

main()

{intm=1,n=2,*p=&m,*q=&n,*r;

r=p;p=q;q=r;

printf(“%d,%d,%d,%d\n”,m,n,*p,*q);

}

程序运营后输出成果是

A)1,2,1,2

B)1,2,2,1

C)2,1,2,1

D)2,1,1,2

(27)若有定义语句:

inta[4][10],*p,*q[4];且0≤i<4,则错误赋值是

A)p=a

B)q[i]=a[i]

C)p=a[i]

D)p=&a[2][1]

(28)有如下程序

#include

#include

main()

{charstr[][20]={“One*World”,“One*Dream!

”},*p=str[1];

printf(“%d,”,strlen(p));printf(“%s\n”,p);

}

程序运营后输出成果是

A)9,One*World

B)9,One*Dream

C)10,One*Dream

D)10,One*World

(29)有如下程序

#include

main()

{inta[]={2,3,5,4},i;

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

switch(i%2)

{case0:

switch(a[i]%2)

{case0:

a[i]++;break;

case1:

a[i]--;

}break;

case1:

a[i[=0;

}

for(i=0;i<4;i++)printf(“%d”,a[i]);printf(“\n”);

}

A)3344

B)2050

C)3040

D)0304

(30)有如下程序

#include

#include

main()

{chara[10]=”abcd”;

printf(“%d,%d\n”,strlen(a),sizeof(a));

}

程序运营后输出成果是

A)7,4

B)4,10

C)8,8

D)10,10

(31)下面是关于C语言字符数组描述,其中错误是

A)不可以用赋值语句给字符数组名赋字符串

B)可以用输入语句把字符串整体输入给字符数组

C)字符数组中内容不一定是字符串

D)字符数组只能存储字符串

(32)下列函数功能是

fun(char*a,char*b)

{while((*b=*a)!

=’\0’){a++,b++;}}

A)将a所指字符串赋给b所指空间

B)使指针b指向a所指字符串

C)将a所指字符串和b所指字符串进行比较

D)检查a和b所指字符串中与否有’\0’

 

(33)设有如下函数

voidfun(intn,char*s){……}

则下面对函数指针定义和赋值均是对的是

A)void(*pf)();pf=fun;

B)viod*pf();pf=fun;

C)void*pf();*pf=fun;

D)void(*pf)(int,char);pf=&fun;

(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)7

B)8

C)9

D)10

(35)有如下程序

#include

#definef(x)x*x*x

main()

{inta=3,s,t;

s=f(a+1);t=f((a+1));

printf(“%d,%d\n’,s,t);

}

程序运营后输出成果是

A)10,64

B)10,10

C)64,10

D)64,64

(36)下面构造体定义语句中,错误是

A)structord{intx;inty;intz;};structorda;

B)structord{intx;inty;intz;}structorda;

C)structord{intx;inty;intz;}a;

D)struct{intx;inty;intz;}a;

(37)设有定义:

char*c;,如下选项中可以使字符型指针c对的指向一种字符串是

A)charstr[]=”string”;c=str;

B)scanf(“%s”,c);

C)c=getchar();

D)*c=”string”;

   (38)有如下程序

#include

   #include

structA

{inta;charb[10];doublec;};

structAf(structAt);

main()

{structAa={1001,”ZhangDa”,1098.0};

a=f(a);jprintf(“%d,%s,%6.1f\n”,a.a,a.b,a.c);

}

structAf(structAt)

(t.a=1002;strcpy(t.b,”ChangRong”);t.c=1202.0;returnt;)

程序运营后输出成果是

A)1001,ZhangDa,1098.0

B)1001,ZhangDa,1202.0

C)1001,ChangRong,1098.0

D)1001,ChangRong,1202.0

   (39)若有如下程序段

intr=8;

printf(“%d\n”,r>>1);

输出成果是

A)16

B)8

C)4

D)2

   (40)下列关于C语言文献论述中对的是

A)文献由一系列数据依次排列构成,只能构成二进制文献

B)文献由构造序列构成,可以构成二进制文献或文本文献

C)文献由数据序列构成,可以构成二进制文献或文本文献

D)文献由字符序列构成,其类型只能是文本文献

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

(1)某二叉树有5个度为2结点以及3个度为1结点,则该二叉树中共有【1】个结点。

(2)程序流程图中菱形框表达是【2】。

(3)软件开发过程重要分为需求分析、设计、编码与测试四个阶段,其中【3】阶段产生“软件需求规格阐明书。

(4)在数据库技术中,实体集之间联系可以是一对一或一对多或多对多,那么“学生”和“可选课程”联系为【4】。

(5)人员基本信息普通涉及:

身份证号,姓名,性别,年龄等。

其中可以作为主核心字是【5】。

(6)若有定义语句:

inta=5;,则表达式:

a++值是【6】。

(7)若有语句doublex=17;inty;,当执行y=(int)(x/5)%2;之后y值为【7】。

(8)如下程序运营后输出成果是【8】。

#include

main()

{intx=20;

printf(“%d”,0

printf(“%d\n”,0

(9)如下程序运营后输出成果是【9】。

#include

main()

{inta=1,b=7;

do{

b=b/2;a+=b;

}while(b>1);

printf(“%d\n”,a);}

(10)有如下程序

#include

main()

{intf,f1,f2,i;

f1=0;f2=1;

printf(“%d%d”,f1,f2);

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

{f=f1+f2;printf(“%d”,f);

f1=f2;f2=f;

}

printf(“\n”);

}

程序运营后输出成果是【10】。

(11)有如下程序

#include

inta=5;

voidfun(intb)

{inta=10;

a+=b;printf(“%d”,a);

}

main()

{intc=20;

fun(c);a+=c;printf(“%d\n”,a);

}

程序运营后输出成果是【11】。

(12)设有定义:

structperson

{intID;charname[12];}p;

请将scanf(“%d”,【12】);语句补充完整,使其可觉得构造体变量p成员ID对的读入数据。

(13)有如下程序

#include

main()

{chara[20]=”Howareyou?

”,b[20];

scanf(“%s”,b);printf(“%s%s\n”,a,b);

}

程序运营时从键盘输入:

Howareyou?

<回车>

则输出成果为【13】。

(14)有如下程序

#include

typedefstruct

{intnum;doubles}REC;

voidfun1(RECx){x.num=23;x.s=88.5;}

main()

{RECa={16,90.0};

fun1(a);

printf(“%d\n”,a.num);

}

程序运营后输出成果是【14】。

(15)有如下程序

#include

fun(intx)

{if(x/2>0)run(x/2);

printf(“%d”,x);

}

main()

{fun(6);printf(“\n”);}

程序运营后输出成果是【15】。

9月全国计算机级别考试二级C语言笔试参照答案

   一、选取题

(1)

C

(2)

B

(3)

D

(4)

A

(5)

B

(6)

A

(7)

C

(8)

B

(9)

C

(10)

D

(11)

D

(12)

C

(13)

A

(14)

B

(15)

B

(16)

D

(17)

C

(18)

A

(19)

A

(20)

B

(21)

D

(22)

C

(23)

A

(24)

C

(25)

D

(26)

B

(27)

A

(28)

C

(29)

C

(30)

B

(31)

D

(32)

A

(33)

A

(34)

C

(35)

A

(36)

B

(37)

A

(38)

D

(39)

C

(40)

C

二、填空题

(1)14

(2)逻辑条件

(3)需求分析

(4)多对多

(5)身份证号

(6)5

(7)1

(8)10

(9)5

(10)01123

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

当前位置:首页 > 表格模板 > 合同协议

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

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