全国计算机2级考试C语言程序设计笔试模拟试题及答案2Word文件下载.docx

上传人:b****6 文档编号:21322902 上传时间:2023-01-29 格式:DOCX 页数:15 大小:26.38KB
下载 相关 举报
全国计算机2级考试C语言程序设计笔试模拟试题及答案2Word文件下载.docx_第1页
第1页 / 共15页
全国计算机2级考试C语言程序设计笔试模拟试题及答案2Word文件下载.docx_第2页
第2页 / 共15页
全国计算机2级考试C语言程序设计笔试模拟试题及答案2Word文件下载.docx_第3页
第3页 / 共15页
全国计算机2级考试C语言程序设计笔试模拟试题及答案2Word文件下载.docx_第4页
第4页 / 共15页
全国计算机2级考试C语言程序设计笔试模拟试题及答案2Word文件下载.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

全国计算机2级考试C语言程序设计笔试模拟试题及答案2Word文件下载.docx

《全国计算机2级考试C语言程序设计笔试模拟试题及答案2Word文件下载.docx》由会员分享,可在线阅读,更多相关《全国计算机2级考试C语言程序设计笔试模拟试题及答案2Word文件下载.docx(15页珍藏版)》请在冰豆网上搜索。

全国计算机2级考试C语言程序设计笔试模拟试题及答案2Word文件下载.docx

D)这时k中无任何值

(13)以下选项中,能用作数据常量的是()

A)0115B)0118C)1.5e1.5D)115L

(14)设有定义:

intx=2;

,以下表达式中,值不为6的是()

A)x*=x+1B)x++,2*xC)x*=(i+x)D)2*x,x+=2

(15)程序段:

intx=12;

doubley=3.141593;

printf(“%d%8.6f”,x,y);

的输出结果是()

A)123.141593B)123.141593C)12,3.141593D)123.1415930

(16)若有定义语句:

doublex,y,*px,*pY;

执行了px=&

x;

py=&

y;

之后,正确的输入语句是()

A)scarf(“%f%1”,x,y);

B)scarf(“%f%f”,&

x,&

y);

C)scarf(“%lf%1e”,px,py);

D)scarf(“%lf%lf”,x,y);

(17)以下是if语句的基本形式:

()

if〔表达式)语句

其中“表达式”

A)必须是逻辑表达式

B)必须是关系表达式

C)必须是逻辑表达式或关系表达式

D)可以是任意合法的表达式

(18)有以下程序

#include<

stdio.h>

main()

{intx;

scarf(“%d”,&

x);

if(x<

=3);

else

if(x!

=10)printf(“&

d\n”。

,x);

}

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

A)不等于10的整数

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

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

D)小于3的整数

(19)有以下程序

{inta=1,b=2,c=3,d=0;

if(a==1&

&

b++==2)

if(b!

=2||c--!

=3)

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

elseprintf(“%d,%d,%d\n”,a,b,c);

elseprintf(“%d,ad,%d\n”,a,b,c);

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

A)1,2,3B)1,3,2C)1,3,3D)3,2,1

(20)以下程序段中的变量已正确定义

for(i=0;

i<

4;

i++,i++)

for(k=l;

k<

3;

k十+);

printf(“*”);

程序段的输出结果是()

A)********B)****C)**D)*

(21)有以下程序

#iinclude<

{char*S={“ABC”};

do

{printf(“%d”,*s%l0);

s++

}while(*s);

注意:

字母A的ASCII码值为65.程序运行后的输出结果是()

A)5670B)656667C)567D)ABC

(22)设变量己正确定义,以下不能统计出一行中输入字符个数(不包含回车符)的程序段是()

A)n=0;

while((ch=getchar())!

='

\n’)n++;

B)n=0;

while(getchar()!

\n‘)n++;

C)for(n=0;

getchar()!

\n'

;

n++);

D)n=0;

for(ch=getchar();

ch!

='

(23)有以下程序

{intal,a2;

charcl,c2;

scanf(“%d%c%d%c”,&

a1,&

cl,&

a2,&

c2);

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

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

12,a,34,b则正确的输入格式是(以下~代表空格,<

CR>

代表回车)()

A)i2a34b<

B)12~a~34~b<

C)12,a,34,b<

D)12~a34~b<

(24)有以下程序

intf(intx,inty)

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

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

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

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

A)10B)9C)8D)7

(25)有以下程序

voidfun(char*s)

{while(*s)

{if(*s%2==0)printf(“%c”,*s);

s++;

{chara[]=(“good”};

fun(a);

printf(“\n”);

字母a的ASCII码值为97,程序运行后的输出结果是()

A)dB)goC)godD)good

(26)有以下程序

voidfun(int*a,int*b)

{int*c;

c=a;

a=b;

b=c;

{intx=3,y=5,*p=&

x,*q=&

fun(p,q);

printf(“%d,%d,”,*P,*q):

fun(&

X,&

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

*p.*q);

A)3,5.5,3B)3,5,3,5C)5,3,3,5D)5,3,5,3

(27)有以下程序

voidf(int*p,int*q);

intm=l,n=2,*r=&

m;

f(r,&

n);

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

voidf(int*p,int*q)

{p=p+l:

*q=*q+1;

}

A)1,3B)2,3C)1,4D)1,2

(28)以卜函数按每行8个输出数组中的数据

voldfun(int*w,intn)

{inti;

for(i=0;

i<

n;

i++)

{_____________

printf(“%d”,w[i]);

printf(“\n”);

下划线处应填入的语句是()

A)if(i/8==0)printf(“\n”);

B)if(i/8==0)continue;

C)if(i%8==0)printf(“\n”);

D)if(i%8==0)contInue;

(29)若有以下定义

intx[1O],*pt=x;

则对x数组元素的正确引用是()

A)*&

x[10]B)*(x+3)C)*(pt+10)D)pt+3

(30)设有定义:

chars[81];

inti=0;

,以下不能将一行(不超过80个字符)带有空格的字符串正确读入的语句或语句组是()

A)gets(s);

B)while((s[i++]=getchar())!

\n’);

s[i]='

\0'

C)scanf(“%s”,s);

D)do{scanf(“%c”,&

s[i]);

}while(s[i++]!

\n‘);

s[i]='

(31)有以下程序

nain()

{char*a[]=(“abed”,“ef”,“gh”,“ijk”};

intI;

i++)printf(“%c”,*a[i]);

A)aegi

B)dfhk

C)abed

D)abcdefghijk

(32)以下选项中正确的语句组是()

A)chars[];

s=“BOOK!

”;

B)char*s={“BOOK!

”};

C)chars[10];

D)char*s=“BOOK!

(33)有以下程序

intfun(intx,inty)

{if(x==y)return(x);

elsereturn((x+y)/2);

main()

(inta=4,b=5,c=6;

ptintf(“%d\n”,fun(2*a,fun(b,c)));

A)3B)6C)8D)12

(34)设函数中有整型变量n,为保证其在未赋初值的情况下初值为0,应选择的存储类别是()

A)auto

B)register

C)static

D)auto或register

(35)有以下程序

intb=2.;

intfun(int*k)

{b=*k+b;

return(b);

{inta〔10]={1,2,3,4,5,6,7,8),i;

for(i=2;

i++){b=fun(&

a[i])+b;

printf(“%d”;

b);

A)1012B)810C)1028D)101b

(36)有以下程序

#definePT3.5;

#defineS(x)PT*x*x;

{inta=1,b=2;

printf(“%4.1f\n”,S(a+b));

A)14.0B)31.5C)7.5D)程序有错无输出结果

(37)有以下程序

structord

{intx,y;

}bt[2]={1,2,3,4};

{structord*p=dt;

printf(“%d”,++p->

printf(“%d\n”,++p->

程序的运行结果是()

A)1,2B)2,3C)3,4D)4,1

(38)设有宏定义:

#defineIsDIV(k,n)((k%n=I)?

1:

0)且变量m己正确定义并赋值,则宏调用:

IsDIV(m,5)&

IsDIV(m,7)为真时所要表达的是()

A)判断m是否能被5或者7整除

B)判断m是否能被5和7整除

C)判断m被5或者7整除是否余1

D)判断m被J和7整除是否都余

(39)有以一下程序

{inta=5,b=1,t;

t=(a《2)|b;

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

A)21B)11C)6D)1

(40)有以下程序

{FILE*f;

f=fopen(“filea.txt”,“w”);

fprintf(f,“abc”);

fclose(f);

若文本文件filea.txt中原有内容为:

hello,则运行以上程序后,文件filea.txt中的内容为()

A)helloabcB)abcloC)abcD)ahchelln

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

请将每一个空的正确答案写在答题卡【1】至【15】序号的横线上,答在试卷上不得分。

(1)假设用一个长度为50的数组(数组元索的下标从0到49)作为栈的存化空间,栈底指针bottom指间栈底元素,栈顶指针top指向栈顶元素,如果bottom=49,top=30(数组下标),则栈中具有【1】个元素。

(2)软件测试可分为白盒测试和黑盒测试。

基本路径测试属于【2】测试。

(3)符合结构化原则的三种基本控制结构是:

选择结构、循环结构和【3】。

(4)数据库系统的核心是【4】。

(5)在E-K图中,图形包括矩形框、菱形框、椭圆框。

其中表示实体联系的是【5】框。

(6)表达式(int)((doubleXS/2)+2.5)的值是【6】

(7)若变量x、y已定义为int类型且x的值为99,y的值为9,请将输出语句printf【7】,x/y;

补充完整,使其输出的计算结果形式为:

x/y=11。

(8)有以下程序

stdio,h>

{charc1,c2;

scanf(“%c”,&

c1);

while(c1<

65||c1>

90)scanf(“%c”,&

c2=c1+32;

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

程序运行输入65回车后,能否输出结果、结束运行(请回答能或不能)

【8】。

(9)以下程序运行后的输出结果是【9】。

intk=1,s=0;

do{

if((k%2)!

0)continue;

s+=k;

k++;

}while(k>

10);

printf(“s=od\n”,s);

}

(10)下列程序运行时,若输入labced}df'

<

回车>

输出结果为【10】。

main.()

{chara=0,ch;

{if(a%2!

=0&

(ch>

a'

ch<

z'

))ch=ch-'

+A'

a++;

putchar(ch);

(11)有以下程序,程序执行后,输出结果是【11】。

voidfun{int*a)

{a[0]=a[1];

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

for(i=2;

i>

=0;

i--)fun(&

a[i]);

for.(i=0;

10;

i++)printf(“%d”},a[1]);

(12)请将以下程序中的函数声明语句补充完整。

【12】intmax(inta,intb);

{intx,y,(*p)();

scarf(“%d%d”,&

p=max;

printf(“%d\n”,(*p)(x.y));

intmax(inta,intb)

{return(a>

b?

a:

}

(13)以下程序用来判断指定文件是否能正常打开,请填空

{FILE*fp;

if(((fp=fopen(“test.txt”,“r”))==【13】))

printf(“未能打开文件!

\n”);

else

printf(“文件打开成功!

(14)下列程序的运行结果为【14】

stdio.h>

string.h>

StructA

(inta;

charb[10];

doublec;

};

voidf(structA*t);

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

f(&

a);

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

voidf(structA*t)

{strcpy(t->

b,“ChangRong”);

(15)以下程序把三个NODETYPE型的变量链接成一个简单的链表,并在while循环中输出链表结点数据域中的数据。

请填空。

structnode

{intdata;

structnode*next:

typedefstructnodeNODETYPE;

{NODETYPEa,b,c,*h,*p:

a.data=10;

b.data=20:

c.data=30;

h=&

a;

a.next=&

b;

b.next=&

c;

c.next='

\0’;

p=h;

while(p){printf(“%d,”;

p->

data);

【15】;

2012年9月全国计算机等级考试二级笔试模拟试题

C语言程序设计(参考答案)

选择题:

1~10:

DACDCABABC

11~20:

CBDDACDBCB

21~30:

CDABABACBC

31~40:

ADBCCCBDAC

填空题:

(1)19

(2)白盒

(3)顺序结构

(4)数据库管理系统(DBMS)

(5)菱形

(6)4

(7)"

x/y=%d"

(8)能

(9)s=0

(10)1AbCeDf2dF

(11)7777654321

(12)max(inta,intb)

(13)NULL

(14)1001,ChangRong,1098.0

(15)p=p—>

next

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

当前位置:首页 > 教学研究 > 教学案例设计

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

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