//函数法
/*
==========================================================
题目:求1~n的阶乘和!(0<=n<=25)
==========================================================
*/
#include
#define M 25
#define H printf(--------------------------- );
int J(int n)
{
int t=1,i;
for(i=1;i<=n;i++)
t*=i;
return(t);
}
main()
{
int i,n,sum=0,flag=1;
while(flag)
{
printf(输入要计算阶乘和的最大数(0
scanf(%d,&n);
if((n
0))
flag=0;
}
for(i=1;i<=n;i++)
sum+=J(i);
H;printf(1!+2!+...+%d!=%d ,n,sum);H
}
/*
==========================================================
评:首先写函数求一个数的阶乘,然后通过输入数字确定求和范围,进而调用
函数并求和。输入时用一个开关变量flag确保输入的数值可用。 ==========================================================
*/
?
|