计算1!+2!+3!+4!+5!+6!+7!+8!+9+10!,用C语言编写程序

如题所述

由于以前做过这样的题目,发现9!的结果int已经装不下了!我现在没有编译器,不过我先写个,你自己看看,我个人觉得这个题目就是考两个方面的问题:1.你注意到你的数据类型没有2.基本的阶乘算法。
#include <stdio.h>
long GetFactoria(int n)
{
long ret=1,i=n;
while(i!=0)
{
ret=ret*i;
i--;
}
return ret;

}
void main()
{
int i;
long sum=0;
for(i=1;i<11;i++)
{
sum+=GetFactoria(i);

}
printf("1!+2!+3!+4!+5!+6!+7!+8!+9!+10!=%ld\n",sum);

}
这个应该没有问题!
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-03-15
#include"stdio.h"
void main()
{
int s,a,i,ss;
for(s=0,a=1 ;a<=10;a++)
{ {
for(ss=1,i=1;i<=a;i++)
ss=ss*i;
}
s=s+ss;
}
printf("%d\n",s);
}本回答被提问者和网友采纳
第2个回答  2009-04-19
#include<stdio.h>
void main()
{
int factorial(int n);
int a;
printf("Please enter number:\n");
scanf("%d",&a); //输入10即可
printf("%d\n",factorial(a));
}
int factorial(int n)
{
int sum;
if(n==1)
sum=1;
else
sum=factorial(n-1)*n;
return sum;
}崩溃 会错题意了
#include<stdio.h>
void main()
{
int n=1;
int i=1;
int sum=2;
while(i<=10)
{
n=n*i;
sum=sum+n;
i++;
}
printf("1!+2!...10!=%d\n",sum);
}
第3个回答  2012-03-11
#include<stdio.h>
void main()
{
long jiecheng(int n);
int i;
long sum=0;
for(i=1;i<=10;i++)
sum=sum+jiecheng(i);
printf("%4d",sum);
printf("\n");
}

long jiecheng(int n)
{
int i;
long sum=1;
for(i=n;i>=1;i--)
sum=sum*i;
return sum;
}
第4个回答  2009-04-19
#include<stdio.h>
void main()
{
long int sum=0;
int i;
//static long int m;
static long n=1;
for(i=1;i<=10;i++)
{
n=n*i;
sum+=n;
printf("%d!=%ld\n",i,n);
}
printf("1!+2!+3!+4!+5!+6!+7!+8!+9!+10!=%ld\n",sum);
}
已帮伱解决 谢谢!

计算1!+2!+3!+4!+5!+6!+7!+8!+9+10!,用C语言编写程序
long GetFactoria(int n){ long ret=1,i=n;while(i!=0){ ret=ret*i;i--;} return ret;} void main(){ int i;long sum=0;for(i=1;i<11;i++){ sum+=GetFactoria(i);} printf("1!+2!+3!+4!+5!+6!+7!+8!+9!+10!=%ld\\n",sum);} 这个应该没有问题!

1!+2!+3!+4!+5!+6!+7!+8!+9!+10!用C语言的流程图怎么画
流程图

计算1!+2!+3!+4!+5!+6!+7!+8!+9!+10!的和,并将结果写入在D盘T.TXT文 ...
include<stdio.h> include<stdlib.h> void main(){ int i,a=1,sum=0;FILE *fp;for(i=1;i<11;i++) \/\/求和运算,不用递归比较简单。{ a=i*a;sum=sum+a;} printf("1!+2!+3!+4!+5!+6!+7!+8!+9!+10!= %d \\n",sum);if((fp=fopen("D:\\T.txt","w"))=...

计算1!+2!+3!+4!+5!+6!+7!+8!+9!+10!,并把结果写入D盘,用C语言编写...
int i;long sum=1;for(i=n;i>=1;i--)sum=sum*i;return sum;}

...10的阶乘之和:S=1!+2!+3!+4!+5!+6!+7!+8!+9!+10!
int mul=1;int sum=0;for(i=1;i<=10;i++)\/\/和循环 { mul=1;\/\/每次循环前都需要初始化为1,要不然最后结果会变大 for(j=1;j<=i;j++)\/\/阶乘循环 { mul=mul*j;} sum=sum+mul;} printf("%d",sum);system("pause");return 0;} C11标准:2011年12月8日,国际标准化组织(ISO...

用C语言设计 T=1!+2!+3!+4!+5!+6!+7!+8!+9!+10!
include <stdio.h> int main(int argc, char** argv){ unsigned int A[11];int i;\/\/A[0]中存放结果。A[0] = A[1] = 1;for (i=2; i<11; i++){ A[i] = i * A[i-1];\/\/利用上次的结果 A[0] += A[i];} printf ("%u\\n", A[0]);return 0;} ...

C语言编程:求1!+2!+3!+4!+5!+6!+7!+8!+9!(用for循环编写)
所以用int型变量就可以准确解决。用一个for循环兼作求阶乘和求和两项功能,空间、时效都较经济。举例代码如下:include "stdio.h"int main(int argc,char *argv[]){int s,i,t;for(s=0,t=i=1;i<10;s+=t*=i++);printf("1!+2!+3!+...+9! = %d\\n",s);return 0;} ...

c语言流程图:求1+2+3+4+5+6+7+8+9+10的值(亲,要图!)
for(i=o;i<10;i++)s=s+i 设定:a是数值,初始值为1,s也是数值,初始值为0。程序开始——判断a是否大于10——分支1——当小于等于10时——运行:s=s+a,a++ 返到判断a处。分支2— 当大于10时——输出a的值,并等待退出程序。

用c语言编一程序1+2+3+4+5+6+7+8+9+10
define ADD_ODD(b,e) (((b)+((e)-1))*(((e)-1)\/2))+e)define ADD(r,b,e) if(IS_EVEN(e)){r=ADD_EVEN(b,e);}else{r=ADD_ODD(b,e);} int main(){ int b=1,e=10;int r;ADD(r,b,e);printf("1+2+3+4+5+6+7+8+9+10 = %d",r);return 0;} ...

用C语言表示:1+2+3+4+5+6+7+8+9+10的循环步骤. 要有排列步骤的_百度知 ...
include<stdio.h> void main(){ int a,i,sum=0;for(i=1;i<=10;i++){ sum=sum+i;printf("%d+%d=%d\\n",sum-i,i,sum);} } 楼主,我只能达到这种程度了,我也是初学者,以后可以多多交流。come on!

相似回答