作业帮 > 综合 > 作业

C语言1到20的阶乘#include#includeint unit51(){\x09int i=20,z=20,h=1

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/05/03 12:28:50
C语言1到20的阶乘
#include
#include
int unit51()
{
\x09int i=20,z=20,h=1,sum=0;
\x09for (;z0)
\x09\x09{
\x09
\x09\x09\x09h=i*h;
\x09\x09\x09i--;
\x09\x09}
\x09\x09sum=sum+h;
\x09\x09z--;
\x09\x09i=z;
\x09}
\x09printf("1到20的阶乘和为:\n",sum);
\x09return 0;
}
做出来不显示结果- -.
C语言1到20的阶乘#include#includeint unit51(){\x09int i=20,z=20,h=1
你的程序有点乱,也有的错的地方,比如一开始的int unit51()不应该是int main()吗?还有倒数第三行printf("1到20的阶乘和为:\n",sum);也是错的,应该改为printf("1到20的阶乘和为:%d\n",sum);但是貌似这样最后输出的也只有一个数而不是1到20的阶乘,最后一点,20的阶乘是一个非常大的数,用int根本不行.程序就不给你改了,需要的话我给你写一个.
再问: 那你写吧- -、
再答: #include "stdio.h"
void main()
{
  int i;
  double M=1;
  for(i=1;i<=20;i++)
  {
   M=M*i;
   printf("%2d!=%.0f\n",i,M);
  }

结果:
 1!=1
 2!=2
 3!=6
 4!=24
 5!=120
 6!=720
 7!=5040
 8!=40320
 9!=362880
10!=3628800
11!=39916800
12!=479001600
13!=6227020800
14!=87178291200
15!=1307674368000
16!=20922789888000
17!=355687428096000
18!=6402373705728000
19!=121645100408832000
20!=2432902008176640000
Press any key to continue
再问: = =、是阶乘和
再答:
#include "stdio.h"void main(){  int i;  double M=1,sum=0;  for(i=1;i<=20;i++)  {   M=M*i;   sum+=M;  }  printf("XXX=%.0f\n",M);}