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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、二级 C 语言机试-198 及答案解析(总分:100.00,做题时间:90 分钟)一、填空题(总题数:1,分数:30.00)1.请补充函数 fun,该函数的功能是比较字符串 str1 和 str2 的大小,井返回比较的结果。例如: 当 str1=“cdef“,str2=“cde”时,函数 fun()返回“”。注意:部分源程序给出如下。请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun()的横线上填入所编写的若干表达式或语句。试题程序:# include stdio, h#includeconio. h#define N 80char *fun (char *str1,char

2、str2)char *p1=str1, *p2=str2;while (*p1 if( 【2】 )return “;p1+;p2+;if (*p1=*p2)return “=“;if (*p1= 【3】 )return “;elsereturn “;main()char str1 N, str2 N;clrscr ();printf (“Input str1: /n“);gets (str1);printf (“Input str2: /n“);gets (str2);printf (“/n*the result*/n“);printf (“/nstr1 %s str2“, fun (str

3、1, str2) );(分数:30.00)填空项 1:_二、改错题(总题数:1,分数:30.00)2.下列给定程序中,函数 fun()的功能是;求 S 的值。设 S=(2 2/1*30)*(42/(3*5)*(62/(5*7)*(2k)2/(2k-1)*(2k+1)例如,当 k 为 10 时,函数的值应为 1.533852。请改正程序中的错误,使它能得出正确的结果。注童;不要改动 main 函数,不得增行或删行,也不得更改程序的结构。试题程序:#include conio. h#include stdio. h#include math.h /*found*/fun (int k)iht n;

4、 float s, w, p, q;n=1;s=1.0;while (n=k)w=2. 0*n;p=w-1.0;q=w+1.0;s=s*w*w/p/q;n+;/*found*/return smain()clrscr ();printf (“%f/n “, fun (10);(分数:30.00)填空项 1:_三、编程题(总题数:1,分数:40.00)3.请编写函数 fun(),该函数的功能是:计算并输出S=1+(1+20.5)+(1+20.5+30.5)+(1+20.5+30.5+n0.5)例如,若主函数从键盘给 n 输入 20 后,则输出为s=534.188884。注意;部分源程序给出如下。

5、请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。试题程序:#include math. h#include stdio. hdouble fun(int n)main()int n;double s;printf(“/n/nInput n: “);scanf (“%d“, s=fun (n)printf (“/n/ns=%f/n/n“, s);(分数:40.00)_二级 C 语言机试-198 答案解析(总分:100.00,做题时间:90 分钟)一、填空题(总题数:1,分数:30.00)1.请补充函数 fun,该函数的功能是比较字符串 str1

6、 和 str2 的大小,井返回比较的结果。例如: 当 str1=“cdef“,str2=“cde”时,函数 fun()返回“”。注意:部分源程序给出如下。请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun()的横线上填入所编写的若干表达式或语句。试题程序:# include stdio, h#includeconio. h#define N 80char *fun (char *str1,char *str2)char *p1=str1, *p2=str2;while (*p1 if( 【2】 )return “;p1+;p2+;if (*p1=*p2)return “=“;i

7、f (*p1= 【3】 )return “;elsereturn “;main()char str1 N, str2 N;clrscr ();printf (“Input str1: /n“);gets (str1);printf (“Input str2: /n“);gets (str2);printf (“/n*the result*/n“);printf (“/nstr1 %s str2“, fun (str1, str2) );(分数:30.00)填空项 1:_ (正确答案:1 *p1*p2 2 *p1*p2 3 /0)解析:解析 填空 1:比较两个字符串的大小,是从第一个字符开始比较

8、如果两字符不相等,则由字符的大小决定字符串 P2 指向字符串 str2,如果 p1 所指的字符小于 p2 所指的字符,则字符串 str1 小于字符串 str2。填空 2:如果 p1 所指的字符大于 p2 所指的字符,则字符串 str1 大于字符串 str2。填空3:如果 str1 是 str2 的前一部分,则 str1 的所有字符都等于 str2 中的对应字符,而字符串结束标记符/0小于其他字符,所以,这里如果 p1 所指的字符等于/0,则表示字符串 str1 小于字符串str2。二、改错题(总题数:1,分数:30.00)2.下列给定程序中,函数 fun()的功能是;求 S 的值。设 S=(

9、2 2/1*30)*(42/(3*5)*(62/(5*7)*(2k)2/(2k-1)*(2k+1)例如,当 k 为 10 时,函数的值应为 1.533852。请改正程序中的错误,使它能得出正确的结果。注童;不要改动 main 函数,不得增行或删行,也不得更改程序的结构。试题程序:#include conio. h#include stdio. h#include math.h /*found*/fun (int k)iht n; float s, w, p, q;n=1;s=1.0;while (n=k)w=2. 0*n;p=w-1.0;q=w+1.0;s=s*w*w/p/q;n+;/*fou

10、nd*/return smain()clrscr ();printf (“%f/n “, fun (10);(分数:30.00)填空项 1:_ (正确答案:(1)错误:fun(int k) 正确:double fun(int k)(2)错误:return s 正确:returns;)解析:解析这样一道数学题要是用 C 程序来实现,真的挺简单,但我们还是需要注意细节问题上出的错误,该题便是如此。一个是简单的函数调用的定义,另一个是语法错误。三、编程题(总题数:1,分数:40.00)3.请编写函数 fun(),该函数的功能是:计算并输出S=1+(1+20.5)+(1+20.5+30.5)+(1+2

11、0.5+30.5+n0.5)例如,若主函数从键盘给 n 输入 20 后,则输出为s=534.188884。注意;部分源程序给出如下。请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。试题程序:#include math. h#include stdio. hdouble fun(int n)main()int n;double s;printf(“/n/nInput n: “);scanf (“%d“, s=fun (n)printf (“/n/ns=%f/n/n“, s);(分数:40.00)_正确答案:(double fun(int n)i

12、nt i;double s=0.0,s1=0.0;for(i=1;i=n; i+)s1=s1+pow(i,0.5); /*求每项*/s=s+s1; /*按公式求出 s*/return s;)解析:解析 我们先用数学的思路读懂该程序,并用 1 个字符表示“()”内的值。在本程序中用 s1 来表示题中每个小括号内的值,第 1 项相当于有 1 个 10.5次方(它还是 1),第 2 项相当于第 1 项的值加上 200.5次方,第 3 项相当于第 2 项的值加上 30.5次方,依次类推。函数 pow (x,y)的功能是求出 x 的 y 次方,该函数已在库函数math. h中定义(即可直接使用)。要程序中用 s 来表示总的结果,每 1 次循环加 1次 s1 即加 1 项。

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