c语言编写程序计算n的阶乘
c语言1到5的阶乘之和?
c语言1到5的阶乘之和?
代码如下
自己试试。
第一个#include (){ int sum0,n1; int i,j; for(j1;j5;j ) {for(i1;ij;i ){ nn*i; } sumsum n; printf(%d!%d
,j,n); n1; } printf(%d,sum); }
第二个public static void main5(String[] args) {
int num1;
int result0;
while(num100){
result num;
num ;
}
(result);
}
编写一个求n!的函数,在主函数中输入n,调用函数求n?
//因C语言数据类型限制,不能做大数的阶乘运算
//n的值超过22结果会不准确
#include stdio.h
double jc( int n )
C#语言用while循环求n的阶乘?
#include int main() {int n,m,s1;printf("请输入n");scanf("%d",n);mn;while(n1) {s*n;n--;} printf("%d的阶乘s%d
",m,s);return 0;}
C语言计算10的阶乘?
分析下程序,阶乘可以用递归做,也可以用循环做,这里就放上这两种代码了。
一.递归:
#include stdio.h
int f(int t)
{
if (t1)
return 1;
else
return t*f(t-1);
}
int main()
{
printf(d
,f(10));
return 0;
}
程序分析:定义一个f函数,利用递归的特性,进行运算
10*f(9) 10*9*f(8) …… 直到到1时返回1
得出结果:
二.循环:
#include stdio.h
int main()
{
int t11;
for(int i10;i1;i--)
{
t1 t1*i;
}
printf(d, t1);
return 0;
}
程序分析:直接用一个for循环进行自减即可完成,定义t1用于存储结果
得出结果: