ImageVerifierCode 换一换
格式:DOC , 页数:5 ,大小:30.50KB ,
资源ID:1325629      下载积分:5000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-1325629.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

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

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

1、二级 C 语言机试-118 及答案解析(总分:100.00,做题时间:90 分钟)一、填空题(总题数:1,分数:30.00)1.请补充 main 函数,改函数的功能是,把一个二维字符数组每行字符串最大的字符拷贝到字符数组 s 中。例如,如果 str3=“efjh“,“cfimls“,“owys“,则 s;“hsy“。注意:部分源程序给出如下请勿改动主函数 main 和其他函数中的任何内容,仅在 main 函数的横线上填入所编写的若干表达式或语句。试题程序:#inc ludestdio, hmain()int i=0;char *str 3 = “efjh“, “efknls“,“owys“ ;

2、char *p;char s 8;clrscr 0;【1】;for (i=O; i3; i+)s i =*p i;while (*p i )if (S i *p i )s i =*pi;【2】;【3】;printf(“ new string /n“);puts (s);(分数:30.00)填空项 1:_二、改错题(总题数:1,分数:30.00)2.下列给定程序中,函数 fun()的功能是:判断一个整数 m 是否是素数,若是返回 l,否则返回 0。在main()函数中,若 fun()返回 1 则输出 YES,若 fun()返回 0 则输出 NO!请改正程序中的错误,使它能得出正确的结果。注意:不

3、要改动 main 函数,不得增行或删行,也不得更改程序的结构试题程序:#include conio.h#include stdio.hint fun(int m)int k=2;while (k=m(m%k)/*found*/k+/*found*/if(m=k)return 1;else return O;main ( )iht n;clrscr ();printf(“/nPlease enter n: “);scanf (“%d“, if (fun (n) printf (“YES/n“);else printf (“NO! /n“);(分数:30.00)填空项 1:_三、编程题(总题数:1

4、分数:40.00)3.请编写函数 fun(),该函数的功能是:将 s 所指字符串中 ASCII 值为偶数的字符删除,串中剩余字符形成一个新串放在 t 所指的数组中。例如,若 s 所指字符串中的内容为 ABCDEFGl2345,其中字符 B 的 ASC码值为偶数、字符 2 的 ASC码值为偶数、,都应当删除,其他依次类推。最后 t 所指的数组中的内容应是 ACEGl35。注定:部分源程序给出如下。请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。试题程序;#include stdio. h#includestring.h#includeconi

5、o. hvoid fun(char *s, char t)main ( )char s100,t 100;clrscr ();printf (,/nPlease enter string S: “);scanf (“%s“, s);fun(s,t);printf (“/nThe result is :%s/n“,t);(分数:40.00)_二级 C 语言机试-118 答案解析(总分:100.00,做题时间:90 分钟)一、填空题(总题数:1,分数:30.00)1.请补充 main 函数,改函数的功能是,把一个二维字符数组每行字符串最大的字符拷贝到字符数组 s 中。例如,如果 str3=“efj

6、h“,“cfimls“,“owys“,则 s;“hsy“。注意:部分源程序给出如下请勿改动主函数 main 和其他函数中的任何内容,仅在 main 函数的横线上填入所编写的若干表达式或语句。试题程序:#inc ludestdio, hmain()int i=0;char *str 3 = “efjh“, “efknls“,“owys“ ;char *p;char s 8;clrscr 0;【1】;for (i=O; i3; i+)s i =*p i;while (*p i )if (S i *p i )s i =*pi;【2】;【3】;printf(“ new string /n“);puts

7、 (s);(分数:30.00)填空项 1:_ (正确答案:1 p=str 2pi+ 3si=/0)解析:解析 填空 1:sb 是一个大小为 3 的指针数组,每个指针指向一个字符串,p 是指向指针的指针,首先要使指针 p 指向数组 sb 的首地址。填空 2:通过 pi+使 pi指向第 i 个字符串的下一个字符。填空 3:将每行字符串的最大字符都拷贝到字符数组 s 中后,不要忘了在数组 s 最后加上字符串结束标记符/0。二、改错题(总题数:1,分数:30.00)2.下列给定程序中,函数 fun()的功能是:判断一个整数 m 是否是素数,若是返回 l,否则返回 0。在main()函数中,若 fun(

8、)返回 1 则输出 YES,若 fun()返回 0 则输出 NO!请改正程序中的错误,使它能得出正确的结果。注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构试题程序:#include conio.h#include stdio.hint fun(int m)int k=2;while (k=m(m%k)/*found*/k+/*found*/if(m=k)return 1;else return O;main ( )iht n;clrscr ();printf(“/nPlease enter n: “);scanf (“%d“, if (fun (n) printf (“Y

9、ES/n“);else printf (“NO! /n“);(分数:30.00)填空项 1:_ (正确答案:(1)错误:k+ 正确:k+(2)错误:if(m=k) 正确:if(m=k))解析:解析 函数 fun()的功能是判断 m 是否为素数:m 从 2 开始作为除数,并对 m 取余,若不存在一个数使得余数为 0,则 m 为素数,程序的错误在于 if(m=k)语句中的逻辑表达式写成了赋值表达式。三、编程题(总题数:1,分数:40.00)3.请编写函数 fun(),该函数的功能是:将 s 所指字符串中 ASCII 值为偶数的字符删除,串中剩余字符形成一个新串放在 t 所指的数组中。例如,若 s

10、所指字符串中的内容为 ABCDEFGl2345,其中字符 B 的 ASC码值为偶数、字符 2 的 ASC码值为偶数、,都应当删除,其他依次类推。最后 t 所指的数组中的内容应是 ACEGl35。注定:部分源程序给出如下。请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。试题程序;#include stdio. h#includestring.h#includeconio. hvoid fun(char *s, char t)main ( )char s100,t 100;clrscr ();printf (,/nPlease enter str

11、ing S: “);scanf (“%s“, s);fun(s,t);printf (“/nThe result is :%s/n“,t);(分数:40.00)_正确答案:(void fun(char *s, char t)int i=0;for (;*s!=/0 ;s+) /*找出 ASCII 值为奇数的字符依次存入数组 t 中*/if (*s%2=1)t i+ =*s;ti=/0; /*在字符串的末尾口上串结束符*/ )解析:解析 要删除 ASCH 值为偶数的字符,也就是要留下 ASCH 值为奇数的字符,由于最终是要求求出剩余字符(BPASC值为奇数)形成的新串,所以本题程序的算法是从原字符串的头到尾扫描并找出 ASC值为奇数的字符依次存入数组冲。此外,还要注意数组 t 的下标变化和下标的初值(初值必须为 0,即 i=0),ti+州的作用是先使用 ti然后再使自增 1。任何字符串的末尾都要有串结束符。这种算法在很多题中都要用到,学习者可以举一反三地找一些其他相关习题练习一下。

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