c++编写程序,计算s=1+(1+2!)+(1+2!+3!)+…+(1+2!+3!+…+n!)。

关于阶乘老师没讲清楚,多谢大神...

#include

usingnamespacestd;

intmain()

{

intn;

staticintsum=1;

cout<<"请输入N:"<<endl;

cin>>n;

for(inti=1;i<=n;i++)

{

for(intj=1;j<=i;j++)

{

sum=sum+j;

}

}

cout<<"结果2为:"<<sum;

system("pause");

return0;

扩展资料

C语言计算1-1/3+1/5-……的前n项之和

#include<stdio.h>

intmain(void){

inti,n;

doublef,s;

intflag=1,m=1;

printf("请输入分母的终值:");

scanf("%d",&n);

for(i=1,s=0;i<=n;i++)

{

f=flag*1.0/m;

s+=f;

flag=-flag;

m=m+2;

}

printf("1+1/3-1/5+...+1/n=%.2f\n",s);

system("pause");

return0;

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-24
#include <iostream>
#include <cstdio>
using namespace std;

int main()
{
int i,n;
__int64 sum=0;//所有的和
__int64 sum2=0;//阶乘和的
__int64 js = 1;

scanf("%d", &n);//只有用c的函数才容易出来64位的输入输出
for(i=1;i<=n;++i) {
js *= i;
sum2 += js;
sum += sum2;
}

printf("sum=%I64d\n", sum);
return 0;
}

本回答被网友采纳
第2个回答  2013-11-24
先弄一个计算阶乘的程序,如下:

#include<stdio.h> long fac(int n) {long f;
if (n=0) f=1; else
f=n*fac(n-1); return f }
main()
{
long y;
int n; printf();
scanf(“%d”,&n); y=fac(n)
printf(“%d!=%1d”,n,y,);
}
在编一个求和程序,调用一下上面的阶乘即可!