C语言个人习题:循环(1)

已知函数ex可以展开为幂级数1+x+x2/2!+x3/3!+⋯+xk/k!+⋯。 现给定一个实数x,要求利用此幂级数部分和求e^x的近似值,求和一直继续到最后一项的绝对值小于0.00001。

输出格式:在一行中输出满足条件的幂级数部分和,保留小数点后四位。

#include<stdio.h>
#include<math.h>
int main()
{
    double x,sum=1.0,item=1,i;
    int k=1;
    scanf("%lf",&x);
    while(fabs(pow(x,k)/item)>=0.00001)
    {
        sum=sum+1.0*pow(x,k)/item;
        item=1; 
        k=k+1;
		for(i=1;i<=k;i++)
        {
            item=item*i;
        }	
    }
    printf("%.4f",sum+pow(x,k)/item);
    return 0;
}

版权声明:本文为qq_45864922原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。