扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
#include stdio.h
在温县等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站制作、成都做网站 网站设计制作按需开发网站,公司网站建设,企业网站建设,品牌网站制作,营销型网站,外贸营销网站建设,温县网站建设费用合理。
#include math.h
int main(void)
{
double f = 1;
double x, k, x2, power = 1;
int i = 2;
scanf("%lf", x);
power += x;
k = x;
do {
x2 = power;
f *= i++;
x *= k;
power += x / f;
} while(fabs(power-x2) 1e-8);
printf("%f", power);
}
/////////////////////////
你那个代码,1、pow函数可以不用自己写,你写的精度也不够;2、保存阶乘最好用double,不然要溢出。
修正了以上2点就没问题了,代码如下:
#include stdio.h
#include math.h
double f1(int n)
{
double s = 1;
int i;
for ( i=1; i=n; i++)
s *= i;
return s;
}
main()
{
int x,i, n;
double ex = 1;
scanf("%d%d",x,n);
for ( i=1; i=n; i++)
ex += pow(x, i) / f1(i);
printf("%lf %lf\n",ex, exp(x));
}
另一个函数实现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)
return 0;
if(n == 0)
return 1;
for(i=1; in;i++)
result *= x;
//printf("%d^%d = %d\n", x, n, result);
return result;
}
int main()
{
double ex=1, fn;
int fac, nPow;
int i,x,n;
printf("请输入x和n的值:\n");
scanf("%d %d", x, n);
for(i=1;i=n;i++){
nPow = nth_power(x, i);
fac = factorial(i);
fn = 1.0*nPow / fac;
ex += fn;
}
printf("ex=%.2f\n", ex); //结果保留小数点后两位数字
}
//示例运行结果
F:\c_worka.exe
请输入x和n的值:
2 3
ex=6.33
F:\c_worka.exe
请输入x和n的值:
2 10
ex=7.39
代码如下,
#includestdio.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);
}
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流