C语言,求n阶乘的代码?

 我来答
刘世媛aa
高粉答主

推荐于2019-08-09 · 繁杂信息太多,你要学会辨别
知道小有建树答主
回答量:351
采纳率:100%
帮助的人:11.5万
展开全部

思路:所谓n的阶乘就是从1到n的累积,所以可以通过一个for循环,从1到n依次求积即可。
参考代码:
#include "stdio.h"
int main() {
int n,i,s=1;
scanf("%d",&n);
for(i=1;i<=n;i++)//for循环求累积
s=s*i;
printf("%d\n",s);
return 0;
}
/*
运行结果:(例如求5的阶乘)
5
120
*/

  • 从桌面打开下载好的编程软件,下图为visual C++的打开界面。

  • 打开编程软件后,新建一个任务,点击文件,选择C++ source file, 放在自己喜欢的文件夹下面。

  • 输入这段代码,记得代码编译前,先要定义变量。# include <stdio.h>void main (){    int n ,f =1 ;    printf ("input n :");    scanf("%d\n",&n);        for (;n>0;n--)            f=f*n;        printf("n!=%d\n",f);        }

  • 点击如图的两个按钮,左边是complie是编译的意思 ,右边build 是连接的意思。

  • 检查完,没有显示error的情况下,最后点击BuildExecute 运行软件。

  • 最后一步运行软件后,Debug里面有个exe的可运行程序,就是N的阶乘程序了。

参考资料

百度经验.百度[引用时间2018-5-7]

帐号已注销
2021-06-22 · TA获得超过77.1万个赞
知道小有建树答主
回答量:4168
采纳率:93%
帮助的人:165万
展开全部

思路:所谓n的阶乘就是从1到n的累积,所以可以通过一个for循环,从1到n依次求积即可。

#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;

}

定义范围

通常所说的阶乘是定义在自然数范围里的(大多科学计算器只能计算 0~69 的阶乘),小数科学计算器没有阶乘功能,如 0.5!,0.65!,0.777!都是错误的。但是,有时候我们会将Gamma 函数定义为非整数的阶乘,因为当 x 是正整数 n 的时候,Gamma 函数的值是 n-1 的阶乘。

以上内容参考:百度百科-n!

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
千锋教育
2016-01-08 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
思路:所谓n的阶乘就是从1到n的累积,所以可以通过一个for循环,从1到n依次求积即可。
参考代码:
#include "stdio.h"
int main() {
int n,i,s=1;
scanf("%d",&n);
for(i=1;i<=n;i++)//for循环求累积
s=s*i;
printf("%d\n",s);
return 0;
}
/*
运行结果:(例如求5的阶乘)
5
120
*/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
糖糖小小个
2019-12-21 · TA获得超过9023个赞
知道小有建树答主
回答量:1592
采纳率:82%
帮助的人:43.5万
展开全部
思路:所谓n的阶乘就是从1到n的累积,所以可以通过一个for循环,从1到n依次求积即可。
参考代码:
#include "stdio.h"
int main() {
int n,i,s=1;
scanf("%d",&n);
for(i=1;i<=n;i++)//for循环求累积
s=s*i;
printf("%d\n",s);
return 0;
}
/*
运行结果:(例如求5的阶乘)
5
120
*/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
test_pop
2013-06-14 · TA获得超过376个赞
知道小有建树答主
回答量:332
采纳率:100%
帮助的人:239万
展开全部
#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;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式