欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    【计算机类职业资格】二级C语言笔试-54及答案解析.doc

    • 资源ID:1326300       资源大小:97KB        全文页数:32页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【计算机类职业资格】二级C语言笔试-54及答案解析.doc

    1、二级 C语言笔试-54 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:50,分数:60.00)1.下列程序的输出结果是_。#includestdio.hmain()unionint k;char i2;*s,a;s=y0;y-)if(y%30)printf(“%d“,-y);continue;的输出是_。(分数:1.00)A.741B.852C.963D.87542112.设 p1和 p2是指向同一个 int型一维数组的指针变量,k 为 int型变量,则下列不能正确执行的语句是_。(分数:1.00)A.k=*p1+*p2;B.p2=k;C.p1=p2;D.k=*p1

    2、*(*p2);13.以下程序的输出结果是_。main()union char i2;int k;r;r.i0=2; r.i1=0;printf(“%d/n“,r.k);(分数:1.00)A.2B.1C.0D.不确定14.设 int i=2,j=1,k=3,则表达式 imain()int a10,i,k;for(i=0;i10;i+)scanf(“%d“,while(-y);printf(“%d/n“,y-);(分数:1.00)A.-1B.1C.8D.041.在下面的语句中,赋值语句错误的是_。(分数:1.00)A.a=(b=(c=2,d=3);B.i+;C.a=a/b=2;D.a=aa+1;4

    3、2.以下程序的输出结果是_。#includestdio.hmam()inta,b,d=241;a=d/100%9;b=(-1)printf(“%d,%d/n“,a,B) ;(分数:1.00)A.6,1B.2,1C.6,0D.2,043.程序流程图(PFD) 中的箭头代表的是_。(分数:1.00)A.数据流B.控制流C.调用关系D.组成关系44.下列关于栈的叙述中正确的是_。(分数:1.00)A.在栈中只能插入数据B.在栈中只能删除数据C.栈是先进先出的线性表D.栈是先进后出的线性表45.要为读/写操作打开一个字符文件,其正确的打开方式为_。(分数:1.00)A.wrB.r+C.rb+D.rw4

    4、6.下列程序是将一个十进制正整数转化为一个八进制数,在程序的空白处应填入的语句是_。#includestdio.hmain()int i=9,a,b10=0;scanf(“%d“,的功能相同,请补充完整。if( 【10】 )if( 【11】 )y=2*x-1;else y=x;else y=3*x-11;(分数:4.00)填空项 1:_61.以下程序中用户由键盘输入一个文件名,然后输入一串字符(用#结束输入)存放到此文件中,形成文本文件,并将字符的个数写到文件的尾部。请填空。#includestdio.hmain()FILE *fp;char ch,fname32; int count=0;p

    5、rintf(”Input the filename:“);scanf(“%s“,fname);if(fp=fopen( 【12】 ,“w+“)=NULL)printf(“Cant open file:%s/n“,fname);exit(0);printf(“Enter data:/n“);while(ch=getchar()!=#)fputc(ch,fp);count+;fprintf( 【13】 ,“/n%d/n“,count);fclose(fp);(分数:4.00)填空项 1:_62.函数 void fun(float*sn,int n)的功能是:根据以下公式计算 S,计算结果通过形参指

    6、针 sn传回;n通过形参传入,n 的值大于等于 0。请补全程序。S=1-1/3+1/5-1/7+1/(2n+1)void fun(float*sn,int n)float s=0.0,w,f=-1.0;int i=0;for(i=0;i=n;i+)f= 【14】 *f;w=f/(2*i+1);s+=w;【15】 =s;(分数:4.00)填空项 1:_63.下面的函数 strcat(str1,str2)实现将字符串 str2拼接到字符串 str1后面的功能。请填空使之完整。char*strcat(str1,str2)char*str1,*str2;char*t=str1;while( 【16】

    7、)str1+;while( 【17】 );return(t);(分数:4.00)填空项 1:_64.以下函数 fun用于求两个整数 a和 b的最大公约数。fun(a,B) int a,b;int i,j,m,n;if(aB) m=a;a=b; 【18】 ;i=a;j=b;while(n= 【19】 )!=0)j=i;i= 【20】 ;return(i);(分数:6.00)填空项 1:_二级 C语言笔试-54 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:50,分数:60.00)1.下列程序的输出结果是_。#includestdio.hmain()unionint k;

    8、char i2;*s,a;s=y0;y-)if(y%30)printf(“%d“,-y);continue;的输出是_。(分数:1.00)A.741B.852 C.963D.875421解析:评析 “%”是求余运算符,所以 if判断语句中实际是指出只有当 y可以被 3整除时方可以继续;-y是先进行 y的自减运算,再使用 y值。所以,最后的打印结果应当为“852”。12.设 p1和 p2是指向同一个 int型一维数组的指针变量,k 为 int型变量,则下列不能正确执行的语句是_。(分数:1.00)A.k=*p1+*p2;B.p2=k; C.p1=p2;D.k=*p1*(*p2);解析:评析 指针

    9、变量中只存放地址(指针),不要将个整型量(或任何其他非地址类型的数据)赋给个指针变量,所以 B 是不正确的。13.以下程序的输出结果是_。main()union char i2;int k;r;r.i0=2; r.i1=0;printf(“%d/n“,r.k);(分数:1.00)A.2 B.1C.0D.不确定解析:评析 根据共用体的定义可知:共用体 r的成员 k和成员 i2是共用同段内存空间,所以,当程序给 r.i0赋值后,实际上,共用体成员 k的值也确定了,为 2。所以打印输出的结果应当为 2。14.设 int i=2,j=1,k=3,则表达式 imain()int a10,i,k;for(

    10、i=0;i10;i+)scanf(“%d“,while(-y);printf(“%d/n“,y-);(分数:1.00)A.-1B.1C.8D.0 解析:评析 do-while 语句的特点是先执行循环体,然后判断循环条件是否成立,当循环条件的值为 0时循环结束。当 y=0时循环结束,printf(“%d/n“,y-)语句是先输出 y再自减,所以输出结果为 0。41.在下面的语句中,赋值语句错误的是_。(分数:1.00)A.a=(b=(c=2,d=3);B.i+;C.a=a/b=2; D.a=aa+1;解析:评析 C 语言中的赋值号“=”是个运算符;赋值语句是由赋值表达式加上一个分号构成。赋值表达

    11、式的左侧不能为常量或表达式。42.以下程序的输出结果是_。#includestdio.hmam()inta,b,d=241;a=d/100%9;b=(-1)printf(“%d,%d/n“,a,B) ;(分数:1.00)A.6,1B.2,1 C.6,0D.2,0解析:评析 第个表达式中,运算的方向是从左至右,所以 a的值为 2;第二个表达式中,等式右边是个逻辑表达式,由于结果为真,所以表达式的值为 1,即 b为 1。43.程序流程图(PFD) 中的箭头代表的是_。(分数:1.00)A.数据流B.控制流 C.调用关系D.组成关系解析:评析 程序流程图(PFD)是种传统的、应用广泛的软件过程设计表

    12、示工具,通常也称为程序框图,其箭头代表的是控制流。44.下列关于栈的叙述中正确的是_。(分数:1.00)A.在栈中只能插入数据B.在栈中只能删除数据C.栈是先进先出的线性表D.栈是先进后出的线性表 解析:评析 栈是限定在端进行插入与删除的线性表。栈是按照“先进后出”的或“后进先出”的原则组织数据的,因此,栈也被称为“先进后出”表或“后进先出”表。45.要为读/写操作打开一个字符文件,其正确的打开方式为_。(分数:1.00)A.wrB.r+ C.rb+D.rw解析:评析 在 C中可以通过 fopen函数来打开个文件,在该函数的第二个参数中指定其打开方式。要以读写方式打开文件可以用“r+“、“w+

    13、“、“a+“来表示,要打开二进制文件,可以在打开方式中加上字母b,对于字符文件不要加 b。46.下列程序是将一个十进制正整数转化为一个八进制数,在程序的空白处应填入的语句是_。#includestdio.hmain()int i=9,a,b10=0;scanf(“%d“,由于(a+b)(c+d)为真,所以 t=(a+b),即为 7。58.以下程序的输出结果是 【8】 。main()unsigned short a=65536;int b;printf(“%d/n“,b=A) ;(分数:2.00)填空项 1:_ (正确答案:0)解析:评析 对于个 nusigned short short来说,它

    14、能取的最大值是 65535。这里给 a赋值 65536,已经超出了它的取值范围,这样它的高位将被截掉,只把低位赋给它(全零)。所以 a的值实际为 0。59.若已经定义 int a=25,b=14,c=19;,以下三目运算符(?:)所构成的语句的执行结果是 【9】 。a+=2的功能相同,请补充完整。if( 【10】 )if( 【11】 )y=2*x-1;else y=x;else y=3*x-11;(分数:4.00)填空项 1:_ (正确答案:【10】 x10【11】 x=1)解析:评析 条件表达式的一般形式为,表达式 1?表达式 2:表达式 3条件运算符的执行顺序:先求解表达式 1,若为非 0

    15、(真)则求解表达式 2,此时表达式 2的值就作为整个条件表达式的值;若表达式 1的值为 0(假),则求解表达式 3,表达式 3的值就是整个条件表达式的值。 y=(x=10)?3*x-11:(x=1)?x:2*x-1;的功能是先求(x=1)?x:2*x-1;的值,所的的结果再与前面的语句构成条件表达式进行求值。所以10应该填 x10, 11应该填 x=1。61.以下程序中用户由键盘输入一个文件名,然后输入一串字符(用#结束输入)存放到此文件中,形成文本文件,并将字符的个数写到文件的尾部。请填空。#includestdio.hmain()FILE *fp;char ch,fname32; int count=0;printf(”Input the filename:“);scanf(“%s“,fname);if(fp=fopen( 【12】 ,“w+“)=NULL)printf(“Cant open file:%s/n“,fname);exit(0);printf(“Enter data:/n“);while(ch=getchar()!=#)


    注意事项

    本文(【计算机类职业资格】二级C语言笔试-54及答案解析.doc)为本站会员(赵齐羽)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开