C语言编程实现:输入一个实数x,计算并输出下式的值,直到最后一项小于10^(-5),要求定义和调用

2024-11-26 20:43:41
推荐回答(2个)
回答1:

#include 
float nypow(float x,int n)
{
    int sign=1;
    if(n<0){
        sign=-1;
        n=n*sign;
    }
    if(n==0)return 1;
    float t=x;
    while(n>1)
    {
        n--;
        t*=x;
    }
    if(sign==-1)
        t=1.0f/t;
    return t;
}
int fact(int n)
{
    if(n==0)return 1;
    int t= n;
    while(n>1)
    {
        n--;
        t*=n;
    }
    return t;
}

int main()
{
    float x,t=1.0f,zero=nypow(10,-5),sum=0.0f;
    int n=0;
    scanf("%f",&x);
while (t>zero){
    t=(nypow(x,n)/fact(n));
    sum+=t;
    n+=2;

}
    printf("%f ",sum);
    return 0;
}

回答2:

360