计算1!+2!+3!+·····10!的值,要求调用fact()计算n!,函数类型为double

2024-12-04 21:47:12
推荐回答(3个)
回答1:

cout<<"请输入n的值"<

cin>>n;

for(int i=1;i<=n;i++)

{

sum+=factorial(i);//调用函数

}

cout<<"n的阶乘为:"<

return 0;

}

int factorial(int a)

{

int result=1;

for(int i=1;i<=a;i++)

result*=i;

return result;

}

扩展资料:

在C语言中,子程序的作用是由一个主函数和若干个函数构成。由主函数调用其他函数,其他函数也可以互相调用。同一个函数可以被一个或多个函数调用任意多次。

在程序设计中,常将一些常用的功能模块编写成函数,放在函数库中供公共选用。要善于利用函数,以减少重复编写程序段的工作量。

函数分为全局函数、全局静态函数;在类中还可以定义构造函数、析构函数、拷贝构造函数、成员函数、友元函数、运算符重载函数、内联函数等。

参考资料来源:百度百科-函数

参考资料来源:百度百科-fact (FACT函数)

回答2:

#include  
double fact(int n)
{
double sum=1;
int i;
for(i=2;i<=n;i++)
sum*=i;
return sum;
}
int main() 

    int i;
    double sum=0; 
    for(i=1;i<=10;i++) 
    sum+=fact(i);
    printf("%.0f",sum); 
    return 0; 
}

回答3:

#include
double fact(int n)
{
    int i,j;
    double sum = 0;
    double sum_j;
    for(i=1;i<=n;i++)
    {
        sum_j = 1;
        for(j=1;j<=i;j++)
        {
            sum_j = sum_j*j;
        }
        sum +=sum_j;
    }
    return sum;
}
void main()
{
    int n;
    printf("input a number:\n");
    scanf("%d",&n);
    printf("the result is:%lf\n",fact(n));
}

直接输入10就是你要的结果