A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

/*
题目:
编写一个函数int pieAdd(int n),计算1!+2!+3!+……+n!的值(n>=1)。
比如pieAdd(3)的返回值是1! + 2! + 3! = 1 + 1*2 + 1*2*3 = 9
*/

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

3 个回复

倒序浏览
上代码,有注释:

  1. #include <stdio.h>

  2. // 求n的阶乘
  3. int pie(int n)
  4. {
  5.     // 1和0的阶乘就=1
  6.     if (n == 1 || n == 0) return 1;
  7.     // n的阶乘=n-1的阶乘*n
  8.     return pie(n - 1) * n;
  9. }

  10. // 求n的阶乘和
  11. int pieAdd(int n)
  12. {
  13.     // 1和0的阶乘和就是自身的阶乘
  14.     if (n == 1 || n == 0) return pie(n);
  15.     // n的阶乘和= n-1的阶乘和+n的阶乘
  16.     return pieAdd(n - 1) + pie(n);
  17. }

  18. int main()
  19. {
  20.     int n = 3;
  21.     printf("%d的阶乘和=%d\n", n, pieAdd(n));
  22. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
本帖最后由 愿我能 于 2014-4-16 15:48 编辑
  1. 第一次插代码原来不能在代码框外修改,,好惨
  2. 看到楼上已经发好了,我也就不发了,楼上的好完美
复制代码

评分

参与人数 1黑马币 +2 收起 理由
jing迪 + 2

查看全部评分

回复 使用道具 举报
周宇华 发表于 2014-4-16 15:40
上代码,有注释:

太感谢了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马