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

如题所述

思路:所谓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]

温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-06-22

思路:所谓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!

本回答被网友采纳
第2个回答  2016-01-08
思路:所谓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
*/
第3个回答  2019-12-21
思路:所谓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
*/
第4个回答  2013-06-14
#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;
}

相似回答