【在线等】c语言程序:对n的阶乘求和,n=1到10

 我来答
lllllll456
推荐于2019-11-01 · TA获得超过4205个赞
知道答主
回答量:66
采纳率:0%
帮助的人:7.9万
展开全部

分析下程序,阶乘可以用递归做,也可以用循环做,这里就放上这两种代码了。

一.递归:

#include <stdio.h>

int f(int t)

{

if (t==1)

return 1;

else

return t*f(t-1);

}

int main()

{

printf("%d\n",f(10));

return 0;

}

程序分析:定义一个f函数,利用递归的特性,进行运算

10*f(9) = 10*9*f(8) …… 直到到1时返回1  

得出结果:

二.循环:

#include <stdio.h>

int main()

{

int t1=1;

for(int i=10;i>=1;i--)

{

t1 = t1*i;

}

printf("%d", t1);

return 0;

}

程序分析:直接用一个for循环进行自减即可完成,定义t1用于存储结果

得出结果:

White_MouseYBZ
2018-02-23 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6649万
展开全部
#include "stdio.h"
int main(int argv,char *argc[]){
int i,s,t;
for(s=0,t=i=1;i<=10;s+=t*=i++);
printf("1!+2!+3!+...+10! = %d\n",s);
return 0;
}

结果:

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
TimeArrows
2018-02-22 · TA获得超过255个赞
知道答主
回答量:59
采纳率:100%
帮助的人:3.9万
展开全部
#include<stdio.h>
int main()
{
int i,n,s=0,t=1;
printf("%s\n","请输入要阶乘求和的数");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
t=t*i;
s=s+t;
}
printf("%d的阶乘求和结果是%d\n",n,s);
return 0;
}
在输入界面输入10,按enter,得结果4037913
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
推荐于2018-02-23
展开全部
计算从1到10各数阶乘的和,即1! + 2! + 3! + …… + 9! + 10! 的和
#include<stdio.h>
int main(void)
{
int sum,i,term;
sum=0;
term=1;
for(i=1;i<=10;i++)
{
term=term*i;
sum=sum+term;
printf("%d的阶乘 %d\n",i,term);
}
printf("1到10各数阶乘的和 %d\n",sum);
return 0;
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wang707154632
2013-06-22 · TA获得超过113个赞
知道答主
回答量:286
采纳率:0%
帮助的人:139万
展开全部
#include<iostream>
int main()
{
using namespace std;
int n,factorial;
int Sum=0;
cout<<"请输入要求得整数:";
cin>>n;
for(int i=1;i<=n;i++)
{
factorial=1;
for(int j=1;j<=i;j++)
{

factorial=factorial*j;
}
Sum=Sum+factorial;
}
cout<<"结果是:"<<Sum;
getchar; //显示屏幕停止,不闪退
getchar;
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式