求!1+!2+!3+!4+!5 注:!5=1*2*3*4*5; 求用C语言编出来 我学到循环结构 求解 最好写些注释让我容易懂

 我来答
lmysdju
2010-09-29 · TA获得超过2264个赞
知道小有建树答主
回答量:332
采纳率:0%
帮助的人:460万
展开全部
你说只学到循环,所以本程序中没有用自定义函数。用一个二重循环来描述合式中出现的一般项,而每次求一般项是,均需把k归1。
#include<stdio.h>
main()
{
int i,j,k,sum=0;
for(i=1;i<=5;i++)
{
k=1;
for(j=1;j<=i;j++)
k*=j; /*用k表示合式中的一般项,如:1!,2!
循环中i表示其中的1,2。而j是求阶乘的辅助变量*/
sum+=k; /*sum用来存放各项之和*/
}
printf("1!+2!+3!+4!+5!=%d\n",sum);

}
muyejingefeng
2010-09-29 · TA获得超过348个赞
知道小有建树答主
回答量:287
采纳率:0%
帮助的人:0
展开全部
#include<stdio.h>
int cal(int num)//计算!num
{
int result=1;
for(int i=1;i<=num;i++) //!num=1*2*3*..*(num)
result*=i;
return result;
}

int main()
{
int sum=0;
for(int i=1;i<=5;i++)
sum+=cal(i);
printf("%d\n",sum);
}
为了简单,只使用了循环。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
拉肚肚
2010-09-29 · 超过13用户采纳过TA的回答
知道小有建树答主
回答量:72
采纳率:0%
帮助的人:32.4万
展开全部
int sum=0;//记录求和
for(int i=1;i<=5;i++)//枚举1-5
{
int t=1;//记录阶乘
for(int j=1;j<=i;j++)//计算1-i的阶乘
t=t*i;阶乘
sum=sum+t;求和
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wang非在心上
2010-09-29
知道答主
回答量:17
采纳率:0%
帮助的人:10.5万
展开全部
这个题目应该有这样的一个思路的!!首先必须要有两个变量,一个用来存累计和,一个用来存阶乘,即累积积!!求阶乘时可以利用函数递归调用,然后有了这个思路就应该好做啦!!
long power(int m)
{long f;
f=m*power(m-1);
return f;
}
main()
{int i,n,sum=0;
for(i=1;i<=5;i++)
sum+=power(i);
printf("%d",sum);
}
程序就是这样子的!!如果有点问题的话,你可以上机去调试,问题应该不是很大的!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式