- 1、本文档共20页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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)