递归方法
int f(int n){
if(n==1) return 1
else return n*f(n-1)
}
再在主方法里面编个循环求阶乘之和
int sum=0
for(i=1i<=ni++){
sum=sum+f(i)
}
怎样用C语言求500000的阶乘?
先写两个大数相乘的函数,为了提高效率,定义的数组每个存9位,一个个乘时间肯定是不够的,最好这样比如说先求250 000个积,再用这些积求125 000个积,。。。用空间换取时间
就差不多了
C语言用"for"怎么算1~20!阶乘之和啊?
回答的都很好~
c语言:1到100的老槐培阶乘之和,100用N输入
#include <stdio.h>
#include <stdlib.h>
#define MAX 200
int f[MAX]={0},sum[MAX]={0}大整数,每个int存一个十进制数字,从低位到高位
void main(void)
{
int i,j,n
f[0]=1
printf("Input N: ")
scanf("%d",&n)输入N
for(j=1j<明大=nj++)
{
calc factorial,每位乘j
for(i=0i<200i++)
f[i]*=j
进位
for(i=0i<199i++)
{
f[i+1]+=f[i]/10
f[i]%=10
}
add to sum
for(i=0i<200i++)
sum[i]+=f[i]
sum进位
for(i=0i<199i++)
{
sum[i+1]+=sum[i]/10
sum[i]%=10
}
}
从最高位开始输出
先找到最高位
printf("\n\nThe result is:\n")
i=199
while(sum[i]==0)
i--
while(i>=0)
printf("%d",sum[i--])
system("pause")
}
用c语言怎样编1到10的阶乘和
用循环
int sum=1
for(int i=1i<=10i++)
sum=sum*i
或者用递归函数,可能你还没有学
C语言怎么求0 2 4 6 .2n的阶乘之和啊
#include <stdio.h>求n!的值int func(int n){if(n == 0 || n==1)return 1 elsereturn n*func(n-1)}int main(){int n,i,sum=0 printf("输入n的值: ") scanf("%d",&n) if(n<=0){printf("Input Error!\n") return -1 }for(i=0i<=ni++){sum+=func(2*i) }printf("0!+2!+4!+...+(2n)!= %d\n",sum) return 0} 示例运行结果:
输入n的值: 3
0!+2!+4!+...+(2n)!= 747
输入n的值: 2
0!+2!+4!+...+(2n)!= 27
c语言程序设计求一的阶乘,三的阶乘,五的阶乘之和
#include <stdio.h>int fac(int n)int main(){ int sum = 0 sum = fac(1) + fac(3) + fac(5)printf("%d",sum) return 0}int fac(int n){int i = 0int sum = 0 for(i<=ni++) sum += i return sum}
帮我用c语言编个求两个阶乘之和的程序侍唯
int GetN(int x)
{
if(x=1)
return x
else
return x*GetN(--X)
}
main()
{
int a,b
Scanf("%d",&a)
Scanf("%d",%b)
printf("%d",GetN(a)+GetN(b))
}
c语言阶乘用循环句两个for怎样求和?
输入以下程序可实现两个for求和:
#include<stdio.h>
void main()
{
int sum=0,n,m=1,i,j
scanf("%d",&n)
for(i=1i<=ni++)
{
for(j=1,m=1j<=ij++)
m*=j
sum+=m
}
printf("n的阶乘=%d\n",sum)
}
急求C语言阶乘的和
#include "stdio.h"
main()
{
int i,j,sum1,sum=0,n
printf("请输入n:\n")
scanf("%d",&n)
for(i=1i<=ni++)
{
sum1=1
for(j=1j<=ij++)
{
sum1=sum1*j
}
sum=sum+sum1
}
if(n==0) sum=1
printf("\n阶乘的和为:%d",sum)
}
内层for语句是求i的阶乘,外层for语句是求0!+1!+……+n!
利用for循环计算1~100的阶乘,将1~100的阶乘辩搜累加到sum中就是所求。
#include<stdio.h>
void main()
{
int i
double t=1,sum=0//由于100的阶乘int和long int都放不下.所以用double.
for(i=1i<=100i++) //从1循环到100.
{
t = t * i//计衡纳算1~100的阶乘.
sum = sum + t//将1~100的阶乘累加到sum中.
}
printf("%.0f\n"咐灶没,sum)//输出sum.
}
利用for循环计算1~100的阶乘,将1~100的阶乘累加到sum中就是所求。
我们经常会使用C语言进行各种数学运算,那么如何利用C语言求1到100的阶乘和呢樱孝?下面我给大家演示一下。
工具/材料Dev C++
01首先打开Dev C++软件,新建C语言控制台项目,如下图所示
02然后在main.c文件中森颂巧输入计算阶乘的逻辑代码,如下图此键所示
03接下来我们编译写好的C语言文件,如下图所示
04最后执行C语言文件,我们就可以得到1到100的阶乘之和了,如下图所示
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)