c语言用递归的方法实现1!+2!+3!+4!+.....+n!=?阶乘之和

来源:互联网 发布:淘宝编辑软件 编辑:程序博客网 时间:2024/05/16 06:21
#include "stdafx.h"#include <stdio.h>int getmul(int n){//递归求阶乘   int sum;   int temp = 1;   if(n<=0){         printf("输入的数据错误,不能小于0!\n");        return -1;    }else{          if(n ==1 ){ sum = 1; return sum;}           else {               sum =n * getmul(n-1);                return sum;          }     }}int getSum(int n){//递归求和      int sum;      if(n==0){           sum =0;      }else{           sum = getmul(n) + getSum(n-1);     }      return sum;}void print(int n){//打印   for(int i=1; i <=n; i ++){      if(i==n) printf("%d!=",i);      else printf("%d!+",i);   }}int main(int argc, char* argv[]){   int a = 10;//此为求1到10的阶乘只和   print(a);   printf("%d\n",getSum(a));//调用   return 0;}


 

原创粉丝点击