编程求1!+2!+3!+4!+…+12!,并试着简化程序。
#include<iostream> using namespace std; template <class T> T jiecheng(T a) { if(a!=0) { return a*jiecheng(a-1); } else if(a==0) return 1; else return -1; } int main() { int num; cout<<"请输入阶乘个数:";//求其他任意数的阶乘和 cin >> num ; double sum=0; if (num>0) { cout<<"各项阶乘为:"<<endl; for(int i=num;i>0;i--) { cout<<num-i+1<<"的阶乘为:"; cout<<jiecheng(num-i+1)<<endl; sum+=jiecheng(i); } cout<<"和为:"<<endl; cout<<sum; } else cout<<"请输入大于0的数!"<<endl; return 0; }