首页 > 电脑 > 做N 的阶乘哪里错了,始终为1

做N 的阶乘哪里错了,始终为1

电脑 2022-10-19

C语言 计算N的阶乘 哪里出错了

#include #include int main(int argc, char* argv[]) { int n; int factorial=1; printf("Enter the non-negative integer: "); scanf("%d", &n); if (n<0) printf("\n"); else { int i=1; while(i<=n) { factorial *= i; i++; } } printf("%d! is %d\n", n, factorial); getch(); return 0 ; }你的逻辑有错,

C语言求n的阶乘,哪里出错了,求大佬指点

  1. 把F函数中的fact=fact*1;改为fact=fact*i;。

  2. 把主函数中的result=F(n)/F(m)*F(n-m);改为result=F(n)/F(m)/F(n-m);。

  3. 建议在主函数中的scanf("%d%d",&m,&n);后加一句if(m<0 || n<0 || m

  4. int F(int m);和int F(int n);没有必要这样写,写一行int F(int);就可以了。

计算n的阶乘,,哪里错了???

你的输入有误 Console.Read(); 只能读入1个字符'5',然后转换为你所要的53(5的ASCII码)。 应该是 n = Int32.Parse(Console.ReadLine());

n的阶乘c语言,求解哪里错了~~

当你输入的N不在0~20时,输出是有误的,除了输出shuruwuxiao!,还输出了此时n的值1. #include void main() { int n=1,N,i; scanf("%d",&N); if(N<0||N>20) printf("shuruwuxiao!\n"); else { for(i=1;i<=N;i++) n=n*i; printf("%d\n",n); } } 函数的类型没必要定义成int,也不用返回值

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

标签:信息技术 编程 C(编程语言) CC++ 阶乘

大明白知识网 Copyright © 2020-2022 www.wangpan131.com. Some Rights Reserved. 京ICP备11019930号-18