编写一个程序,输入一个正整数n(假设n<7),求1!+2!+3!+4!+……+n!

如题所述

第1个回答  2012-06-07
#include<iostream>
using namespace std;
void main(){
int i,j,n;
double k,sum;
bool f;
f=true;while(f){sum=0;
cout<<" 请输入一个正整数(输入 0 终止):";cin>>n;if(n==0)f=false;
if(n>0){cout<<endl;
for(i=1;i<=n;i++){k=1;for(j=1;j<=i;j++)k*=j;sum+=k;}
for(i=1;i<=n;i++){cout<<" "<<i<<"!";if(i<n)cout<<" + ";else cout<<" = "<<sum<<endl<<endl;}}}
}
第2个回答  2012-06-07
int i,sum=0,a=1;
for(i=1;i<=N;i++)
{
a*=i;
sum+=a;
}

注意溢出问题
要是很大的数,要用数组来解决,有点麻烦,呵呵本回答被提问者和网友采纳
第3个回答  2012-06-07
int factor(int i)
{
int res=0;
if (i>1) res=res*factor(i-1)
else res=1;
}
void main()
{
int i,s,n;
scanf("%d",&n);
for(i=1;i<=n;i++)
s+=factor(i);
printf("%d",s);
}
第4个回答  2012-06-07
int function(int n)
{ int a=0,s,i;
for( ;n>0;n- - )
{
s=1;
for( i=n;i>0;i- -) s=s*i;
a+=s;
}
return a;
}
相似回答