c语言用函数求n的阶乘的和

2024-12-23 01:32:09
推荐回答(5个)
回答1:

法/步骤

第一步、编程的第一步就是写头文件,对于初学者来说,只写一个头文件就可以了,即#include

第二步、就是定义我们的变量,我们需要定义一个n,用来求他的阶乘,sum用来保存结果,i用来循环

第三步、就是把sum初始化,为1.千万不要为0,保证后面的结果不出问题。

第四步、就是输入一个n,用来求n的阶乘,别忘了在前面提示一下。

第五步、就是利用for循环来求阶乘。

第六步、就是调用printf(:);函数来输出阶乘结果。

拓展资料

定义

n!=1×2×3...xn

n!=X×(X-1)×(X-2)...×1

1751年,欧拉以大写字母M表示m阶乘 M=1x2x3...x...m

1799年,鲁非尼在他出版的方程论著述中,则以小写字母π表示m阶乘。而在1813年,高斯则以Π(n)来表示n阶乘。而用来表示n阶乘的方法起源于英国,但仍未能确定始创人是谁。直至1827年,由于雅莱特的建议而得到流行,现在有时也会以这个符号作为阶乘符号。

当n较大时,直接计算n!变得不可能,这时可通过斯特灵(Stirling)公式计算近似算或取得大小范围。

回答2:

1 思路

    关键是写出求阶乘的函数

2 代码

#include
//求阶乘
int factorial(int n){
if (n == 0 || n == 1)
return 1;
else
return n*factorial(n - 1);
}

int main(){
int n;
printf("求1!+2!+...+n!的结果\n输入n的值: ");
scanf("%d", &n);
int sum = 0;
for (int i = 1; i <= n; i++){
sum += factorial(i);
}
printf("结果为: %d\n", sum);

getchar();
getchar();
return 0;
}

3 运行效果

回答3:

#include

int main()

{

int num,product=1;

printf("请输入一个数:");

scanf("%d",&num);

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

{

product = product*i;

}

printf("阶乘是:%d\n",product);

return 0;

}

回答4:

#include
long sum(int n);        //    声明 
long fac(int i);         //    声明 

int main()
{
    int n;
    scanf("%d",&n);
    
    printf("sum=%ld\n",sum(n));
    return 0;
}

long sum(int n)        //    形参写里面 
{
    int i;        
    long s=0;          //    调用就行了 
    for(i=1;i<=n;i++)
        s=s+fac(i);
    return(s);
}

long fac(int i)
{
    if(i==0)
        return(1);
    else
        return(i*fac(i-1));
}

回答5:

#include
int main()
{
int i,t;
t=1;
i=2;
while (i<=10) //求1加到10的值
{t=t+i;
i=i+1;
}
printf("%d",t);
getchar();
}

可以把10改为100,即是1加到100的和..用while语句