1. 首页 > 科技

C语言求n的阶乘,哪里出错了,求大佬指点 n的阶乘c语言程序设计

C语言求n的阶乘,哪里出错了,求大佬指点n的阶乘c语言程序设计

c语言,这个算n!阶乘的程序那里错了呢?求解 谢谢

楼主的算法是求1!+2!+……n!的累加和

测试结果:

n=5

1!=1

2!=2

3!=6

4!=24

5!=120

1!+2!+……+n!=153

测试代码:

#include

#include "conio.h"

main()

{

long fact,sum;

int i,j,n;

printf("n=");

scanf("%d",&n);

for(j=1,sum=0;j<=n;j++)

{

for(i=1,fact=1;i<=j;i++)

fact=fact*i;

printf("%d!=%d\n",j,fact);

sum=fact+sum;

}

printf("1!+2!+¡­¡­+n!=%.0ld\n",sum);

getch();

}

你的代码没有问题。只是求的阶乘的累加和。中间的for是求j的阶乘的。外层for是用来算累加和的。

用c语言求1~n的阶乘和 求大神指点错哪里

#include

main()

{

int n,i;

long sum=0,p=1;

printf("输入一个正整数");

scanf("%d",&n);

for(i=1;i<=n;i++) // (此处错误无”;“)

{

p*=i;

sum+=p;

}

printf("sum=%d\n",sum);

}

for语句用法没搞清楚,多了个分号

兄弟,打字不要,望采纳

c语言求阶乘的和,哪里错了??

#include <stdio.h>

//求n!的值

int func(int n)

{

    if(n == 1)

        return 1;

    else

        return n*func(n-1);

}

int main()

{

    int n,i,sum=0;

    printf("输入n的值: ");

    scanf("%d",&n);

    if(n<=0)

    {

        printf("Input Error!\n");

        return -1;

    }

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

    {

        sum+=func(i);

    }

    printf("1!+2!+3!+...+n!= %d\n",sum);

    return 0;

}示例运行结果:

输入n的值: 3

1!+2!+3!+...+n!= 9

输入n的值: 5

1!+2!+3!+...+n!= 153

C语言求阶乘程序,不知道哪里错了。请各位帮我指点一下,谢谢!可以运行,但是结果是一个负数。

数字很大 超int表示范围,还有记得把i赋值1;