11.输入一个数,求:1!+2!+…+n!

(1)运用for循环:
 
#include<iostream>
using namespace std;
int JieCheng(int);

int main()
{
    int n,sum=0;
    cout<<"please input an number: "<<endl;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        sum+=JieCheng(i);
    }
    cout<<sum<<endl;
    return 0;
}

int JieCheng(int n)
{
    int m=1;
    for(int i=1;i<=n;i++)
    {
        m*=i;
    }
    return m;
}

 

(2)运用递归:
 
#include<iostream>
using namespace std;
int JieCheng(int);

int main()
{
    int n,sum=0;
    cout<<"please input an number: "<<endl;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        sum+=JieCheng(i);
    }
    cout<<sum<<endl;
    return 0;
}

int JieCheng(int n)
{
    if(n==1)
        return 1;
    return n*JieCheng(n-1);//运用递归
}

 


posted on 2014-08-04 16:47  Ji_xiaowu  阅读(408)  评论(0编辑  收藏  举报

导航