中节能江西公司招聘:帮我做个C语言的题目

来源:百度文库 编辑:高考问答 时间:2024/04/30 04:13:28
题目如下:
1!+2!+3!+4!...............+20!
也就是1的介乘+2的介乘.......+20的介乘
谢谢大家了

#include <stdio.h>

void main()
{
int i,j;
unsigned long s0=1,s1=0;// 和肯定是正整数
// 同时采用长整型,保证计算结果的正确性。
for(i=1;i<=20)
{
s0=s0*i;// 结算阶乘
s1=s1+s0;//求和
}

printf("%ld\n",s1);// 输出到屏幕,或者进行其他处理
}

注释:可以用前5个或4个检验一下,应该没错的

数太大了,输出的数可能跟预想的不一样.
给你个参考
main()
{
double x;
int i,s;
x=1;
for(i=1;i<=20;i++)
{x=x*i;
s=s+x;}
printf("%d",x);
}
如果可以 正确答案就选我吧!!嘿嘿!!!
刚才写错了 。对不起亚

main()
{
float n,s=0,t=1;
for(n=1;n<=20;n++)
{
t*=n;
s+=t;
}
printf("1+2!+3!...+20!=%e\n",s);
}

#include<stdio.h>

main()

{ int i,sum=0;

for ( i=1!;i<=20!;i++)

sum=sum+i;

printf("1!+2!+3!+4!+……+20!=%d\n",sum);
}
不知道是不是对的,希望大家多多指教。

经典的C程序100例里面全有
main()
{
float n,s=0,t=1;
for(n=1;n<=20;n++)
{
t*=n;
s+=t;
}
printf("1+2!+3!...+20!=%e\n",s);
}

楼上的,你的算发有问题,阶乘不能直接写出来,你得用个for循环,象你楼上的!