c语言习题第三章2.doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c语言习题第三章2课案

程序改错/ *下列给定程序中,函数fun的功能是:计算S=f(-n)+f(-n+1)+…+f(0)+f(1)+f(2)+…f(n)的值。 例如,当n为5时,函数值应为10.407143。f(x)函数定义如下: f(x)= 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: */ #include stdlib.h #include stdio.h #include math.h /**********ERROR**********/ f(double x) { if(x==0.0||x==2.0) return 0.0; else if(x0.0) return(x-1)/(x-2); else return(x+1)/(x-2); } double fun(int n) { int i; double s=0.0,y; for(i=-n; i=n;i++) { y=f(1.0*i); s+=y;} /**********ERROR**********/ return s } void main() { printf(%lf\n, fun(5)); } 【参考答案】 double f(double x) 【参考答案】 return s; return (s); /*下列给定程序中,函数fun的功能是:求三个数的最小公倍数。例如,给变量x1、x2、x3分别输入15、11、2,则输出结果应当是330。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: */ #include stdio.h int fun(int x,int y,int z) { int j,t,n,m; /**********ERROR**********/ j=1; t=m=n=1; /**********ERROR**********/ while (t!=0 m!=0 n!=0) { j=j+1; t=j%x; m=j%y; n=j%z; } return j; } void main() { int x1,x2,x3,j; printf(Input x1 x2 x3: ); scanf(%d%d%d,x1,x2,x3); printf(x1=%d,x2=%d,x3=%d \n,x1,x2,x3); j=fun(x1,x2,x3); printf(The minimal common multiple is: %d\n,j); } 【参考答案】 j=0; 【参考答案】 while (t!=0 || m!=0 || n!=0) /*下列程序中函数fun的功能是:计算正整数num各位上的数字之积。例如,若输入252,则输出应该是20。若输入202,则输出应该是0。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序:*/ #include stdio.h #include conio.h long fun(long num) { /**********ERROR**********/ long k; do { k *=num%10; /**********ERROR**********/ num \=10; }while(num); return(k); } void main() { int n; printf(\Please enter a number: ); scanf(%ld,n); printf(\n%ld\n,fun(n)); } 【参考答案】 long k=1; 【参考答案】 num/=10; num=num/10; /*下列给定程序中,函数fun()的功能是:根据整型形参m的值,计算如下公式的值: 请改正函数fun()中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: */ #include stdlib.h #include stdio.h double fun(int m) {double y=1.0; int i; /**********ERROR**********/ for(i=2;im;i++) /**********ERROR**********/ y-=1/(i*i); return(y); } void main() {int n=5;

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档