用c语言求阶乘的和做n的阶乘,图上我右边写的为什么错了?

C语言,求n阶乘的代码?_百度知道
C语言,求n阶乘的代码?
提问者采纳
;;%ld& scanf(&
printf(& for (i = 2; i++)
sum = sum *%ld&= i &lt, &n),
sum = 1;void main(){ long n.h&quot#include&quot, sum)
提问者评价
来自团队:
相关专业回答
关键是写出求阶乘的函数
#include&stdio.h&//求阶乘int factorial(int n){ if (n == 0 || n == 1)
return 1; else
return n*factorial(n - 1);}int main(){
printf(&求1!+2!+...+n!的结果\n输入n的值: &); scanf(&%d&, &n); int sum = 0; for (int i = 1; i &= i++){
sum += factorial(i); } printf(&结果为: %d\n&, sum);...
其他类似问题
为您推荐:
其他3条回答
function jiecheng(int i){
return n&2?n:n*jiecheng(i-1)}
#include&&stdio.h&int&main(){&&&&int&i,&n;&&&&int&sum&=&1;&&&&&&&&printf(&请输入n:&&);&&&&scanf(&%d&,&&n);&&&&&&&&for(i=1;&i&=n;&i++)&&&&{&&&&&&&&&sum&=&sum*i;&&&&&&&}&&&&printf(&n的阶乘是%d\n&,&sum);&&&&return&0;}
int&res=1;for(int&i=1;i&=n;i++)&&&&res*=i;return&
阶乘的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁用c语言求n的阶乘程序的递推与递归法如下,调试没错误但是运行不了,为何?_百度知道
用c语言求n的阶乘程序的递推与递归法如下,调试没错误但是运行不了,为何?
return 0;iostream&iostream&}2; else
return n*fact(n-1);&=1)
return 1;&=n; cout&long fact(int n) { 
int s=1;long fact(int n){ if (n& for(int i=0#include&i++)
s=s*i;s&lt.#include&i&lt
第一个 i应该从1开始吧第二个 没看出来 有什么问题
但是我发现 你貌似两个程序都没有输入吧 没输入怎么会运行
其他类似问题
为您推荐:
阶乘的相关知识
其他2条回答
第一个i = 0,乘以任何数都是0,起始条件应该是i= 1;
s=s*i(一上来为0,之后都为0)
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁后使用快捷导航没有帐号?
查看: 4636|回复: 3
经验3 分贝0 家园币12 在线时间:3 小时最后登录:帖子:精华:0注册时间:UID:975768
军衔等级:
新兵, 积分 3, 距离下一级还需 27 积分
注册时间:
1.求n的阶乘问题(递归算法):思路:n!=1×2×3×……×n或n!=n×(n-1)!答:long int fact(int n) /* fact函数是长整形,返回值也是长整形,n是fact函数的参数*/{If(n==0||n==1)& &&&&&/*||逻辑或,也就是说n==0或n==1,fact(int n)都等于1*/Return 1;& && && && && &&&/*返回结果1。*/ElseReturn fact(n-1) *& &&&/*返回fact(n-1) * n */}
经验131 分贝0 家园币561 在线时间:149 小时最后登录:帖子:精华:0注册时间:UID:755949
军衔等级:
下士, 积分 131, 距离下一级还需 69 积分
注册时间:
哈哈&&楼主你想干啥
经验79 分贝0 家园币572 在线时间:275 小时最后登录:帖子:精华:0注册时间:UID:991450
军衔等级:
上等兵, 积分 79, 距离下一级还需 21 积分
注册时间:
不懂,只知道for循环搞定。
经验12183 分贝0 家园币34688 在线时间:4091 小时最后登录:帖子:精华:0注册时间:UID:272207
军衔等级:
中将, 积分 12183, 距离下一级还需 817 积分
注册时间:
本帖最后由 see1see 于
15:17 编辑
楼主的算法只是拿来做秀用的,一点实用都没有,首先int只有32位,算到4g就溢出了,能算的n非常小,除开这个问题,楼主这个算法只是看起来高深一点,实际上和用for来计算没有一点优点,速度更慢(因为要调用函数),n太大了递归次数太多还有堆栈溢出的问题,用for的话,速度更快,更好理解,n太大的话,虽然和递归一样答案是错误的,但是至少程序运行不会崩溃
)||合作伙伴:
Copyright &
All Rights Reserved我想用C语言计算阶乘,下面哪里有错误?_百度知道
我想用C语言计算阶乘,下面哪里有错误?
printf(&quot,b);10;void main(){n&quot,i;
for(i=0;i&;i++){
static b=1;%d;
b=b*i#include &stdio.h&gt
10;&&int&&&&nbsp.h&&&&&&&&nbsp把for循环的i=0改为i=1;printf(&for(i=1;&&&&&%d;&&&&&&void&&&i;b=1;&b=b*i;&&&main(){&&nbsp,b)!=%d\n&&i&&&nbsp。#include&&&nbsp,i;i++){&;static&nbsp
来自团队:
其他类似问题
为您推荐:
其他2条回答
i从1开始for(i=1;i&10;i++)
i从0开始,怎么乘都是0
i要从1开始
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 c语言n的阶乘 的文章

 

随机推荐