c语言的问题 求级数和的近似值 y(x)=x+x^3/(3*1!)+x^5/(5*2!)+.........令x=0.5 1.0 2.0 3.0 取前十项的和

#include<stdio.h>
int main()
{int j=3,i=1,t,x,k;
float y=0;
scanf("%d", &x);
while(i<=9)
{ k=1,t=i;
while(i>=1){k=k*i,i--;}
y=y+pow(x,j)/(j*k)),i=t+1,j=j+2;}
y=y+x;
printf("y=%10.4f",y);
}

x有四个取值,所以定义一个求y(x)的函数是较好选择。代码如下:

#include "stdio.h"
double func(double x){//求前10项和的函数
int i;
double y,t;
for(y=t=x,i=1;i<10;i++)
    y+=(t*=x*x/i)/(1+i+i);//中间变量t承载部分项值以省去阶乘
return y;
}
int main(int argc,char *argv[]){
printf("y(0.5) ≈ %g\n",func(0.5));
printf("y(1.0) ≈ %g\n",func(1.0));
printf("y(2.0) ≈ %g\n",func(2.0));
printf("y(3.0) ≈ %g\n",func(3.0));
return 0;
}

运行结果如下:

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-04-01
o.h>
void main()
{
int p,r,n,m,temp;
printf("请输入两个正整数:");
scanf("%d %d",&n,&m);
if(n<m)
{
temp=n;
n=m;
m=temp;
}
p=n*m;
while(m!=0)
{
r=n%m;
n=m;
m=r;
}
printf("他们的公倍数为:%d",p/n);
printf("他们的最大公约数为:%d",n);
}
第二题
#include<stdio.h>
void main()
{long i,j,s,m,n;
scanf("%ld",&n);
if(n>5)
for(i=1;i<=n;i++)
{
m=i/2;
for(j=1,s=0;j<=m;j++)
if(i%j==0)s+=j;
if(s==i)printf("%ld\n",i);
}
}
第三题 没看明白,那个X与乘号分不清
第四题
#include<stdio.h>
main()
{
int i=0;
float t,s=0;
for(t=1;t<=100000;i++,t+=i)
{
s+=1.0/t;
}
printf("%f",s);
}
第五题
#include<stdio.h>
#include<math.h>
double pow(double x,double y);
float fun(int n);
void main()
{
float x,n=1,sum=0,s;
int i=1;
printf("请输入x的值:\n");
scanf("%f",&x);
for(n=1;i<10;i++)
{
sum=sum+(pow(x,n)/(n*fun(i)));
n+=2;
}

printf("sum is :%f",sum);
}
float fun(int n)
{
float f;
if(n<0)
;
else if(n==0||n==1)
f=1;
else f=fun(n-1)*n;
return(f);
}
都是我亲自写的,要给分哦
另外,站长团上有产品团购,便宜有保证本回答被提问者采纳

C语言编程求x+x^3\/3+x^5\/5...x^(2n+1)\/(2n+1) 如下编程答案不对...
} printf("s=%f\\n",s); return 0;}

s(x)=x-(x^3\/3*1!)+(x^5\/5*2!)-(x^7\/7*3!)...从键盘输入x,求s(x)的...
} return t;} int main(){ int x,t=-1;scanf("%d", &x);double s=x;for(int i=1;i<20;i++){ s+=t*(pow(x,2*i+1)\/((2*i+1)*mx(i)));t*=-1;} printf("%lf", s);return 0;}

用c语言计算sin(x)的近似值的代码?
sin(x)=x-(x^3)\/3!+(x^5)\/5!+……(-1)^(n)x^(2n+1)\/(2n+1)!采用递推法根据级数的前20项计算sin(x)的近似值:(注: x为弧度值, x^(n+1)表示x的n+1次方)我写的代码如下:include <stdio.h> int main (){ double sx,x,a,b;int n,f=1;printf ("Please input x:"...

用C语言迭代函数的调用来计算X-X^3\/3!+X^5\/5!-X^7\/7!+...
main(){ long i,j,n,k;scanf("%ld",&n);for(i=1;i<=n;i++){ k=1;for(j=1;j

C语言:编写程序计算级数ex=1+x+x2\/2!+x3\/3!+...+xn\/n!的值。要求:要采...
另一个函数实现xn,是x*n的意思还是x的n次幂的意思,即x^n,还请描述清楚哦。include <stdio.h> \/\/求n!的值 int factorial(int n){ if(n == 1)return 1;else return n*factorial(n-1);} \/\/求x的n次幂 int nth_power(int x, int n){ int i;int result = x;if(x == 0)re...

C语言 编写程序计算级数ex=1+x+x2\/2!+x3\/3!+...+xn\/n!的值?
代码如下,include<stdio.h> int main(){ float x;double S=1, sx=1;int n,ni=1;scanf("%f %d",&x,&n);for (int i=1; i <= n; i++) { sx *= x;ni *= i;S += (sx \/ ni);} printf("%.5f", S);}

C语言,求幂级数展开的部分和。刚刚被人乱回答,停止搜索答案所以我再发...
printf("Input x(x∈[0,5])...\\nx=");if(scanf("%lf",&x)!=1 || x<0 || x>5){\/\/保证x∈[0,5],否则退出printf("Input error, exit...\\n");return 0;}for(s=t=i=1;t>0.00001;s+=((t*=x)\/=i++));\/\/不用阶乘,用t=t*x\/i就避免了溢出printf("%.4f\\n",...

...计算级数前n项的和:1+x+x*x\/2!+x*x*x\/3!+...+x的n次方\/n!._百度知 ...
double y=k=s=t=1;这个分开来写:double y=1,k=1,s=1,t=1;

c语言算输入一个x求sinx的值 sinx=x\/1!-x^3\/3!+x^5\/5!···
几个问题 1 i<=999999 && j<=999999 这里不能用逗号 而应该用&& 2 t和s没有初始值。第一次s=s+t\/j结果是不确定的。3 j的意思是保存阶乘吧,那应该是j=j*(i-1)*i;i每次是自加2的。4 每项序列是正负交替的,你现在每次都是加。 这个也不对 ...

C语言利用泰勒级数计算e的近似值,并统计出此时累加了多少项。要求最后一...
nr\/factorial(dm))*sign;nr*=x*x;\/\/累加项的分子sign=-sign;\/\/控制正负i++;\/\/累加项个数}while((nr\/factorial(dm))>=1e-5);printf("sin(x)=%.3f,count=%d\\n",sin,i);system("pause"); } \/\/函数功能:计算阶乘 double factorial (double n) {double s=1;int i;...

相似回答