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

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

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

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

以下关于C语言基本数据类型的说法,正确的是()

A.int类型的取值范围一定是-32768~32767

B.char类型在内存中占1个字节,默认是有符号类型

C.float类型的精度高于double类型

D.布尔类型是C语言的基本数据类型之一

若有定义“inta=10,*p=a;”,以下操作错误的是()

A.*p=20;

B.p=a;

C.intb=*p;

D.p=100;

以下数组定义中,合法的是()

A.intarr[0];

B.intarr[]={1,2,3,4,5};

C.intarr[5]={1,2,3,4,5,6};

D.intarr[3]={1,,3};

函数fun的定义如下:

intfun(intx,inty){

returnx+y;

}

以下调用方式正确的是()

A.inta=fun(10);

B.inta=fun(10,20,30);

C.inta=fun(10.5,20);

D.inta=fun(10,20);

以下关于循环结构的说法,错误的是()

A.for循环的三个表达式都可以省略

B.while循环的循环体至少执行一次

C.do-while循环的循环体至少执行一次

D.break语句可以跳出当前所在的循环

二、程序填空题(每空3分,共15分)

请补充以下程序,实现“找出数组中最大值和最小值”的功能:

#includestdio.h

voidfindMaxMin(inta[],intn,int*max,int*min){

*max=*min=______;//空1:初始化最大值和最小值

for(inti=1;in;i++){

if(a[i]*max){

*max=a[i];

}

if(______){//空2:判断当前元素是否小于最小值

*min=a[i];

}

}

}

intmain(){

intarr[]={5,2,9,1,5,6};

intmax,min;

intlen=______;//空3:计算数组长度

findMaxMin(arr,len,max,min);

printf(最大值:%d,最小值:%d\n,max,min);

return0;

}

三、程序改错题(每题5分,共15分)

以下程序旨在实现“计算两个整数的最大公约数”,存在两处错误,请找出并改正:

#includestdio.h

//错误1:函数参数传递方式错误

voidgcd(inta,intb,int*result){

while(a!=0){//错误2:循环条件错误

inttemp=b%a;

b=a;

a=temp;

}

*result=b;

}

intmain(){

intx=12,y=18,res;

gcd(x,y,res);//错误1相关

printf(最大公约数:%d\n,res);

return0;

}

四、程序设计题(共30分)

请编写程序,实现以下功能:

从键盘输入一个字符串(长度不超过100);

统计字符串中大写字母、小写字母、数字、其他字符的个数;

输出统计结果。

要求:

不使用字符串处理库函数(如strlen);

输入的字符串可能包含空格。

参考答案及解析

一、选择题

B

解析:A选项int类型取值范围取决于编译器(16位或32位),32位系统中是-2147483648~2147483647;C选项double精度高于float;D选项C语言无布尔类型,需通过0和非0表示。

D

解析:指针变量p存储的是地址,不能直接赋值整数100,需赋值变量地址(如a)。

B

解析:A选项数组长度不能为0;C选项初始化元素个数超过数组长度;D选项初始化时不能跳过元素(逗号间不能空)。

D

解析:函数fun需要两个int类型参数,A参数不足,B参数过多,C参数类

文档评论(0)

151****9429 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档