#include
using namespace std;
int factorial(int a);//声明计算阶乘函数
int main()
{
int sum=0,n;
cout<<"请输入n的值"< cin>>n; for(int i=1;i<=n;i++) { sum+=factorial(i);//调用函数 } cout<<"n的阶乘为:"< return 0; } int factorial(int a) { int result=1; for(int i=1;i<=a;i++) result*=i; return result; } 输入的n为10时,运行结果如下:
#include
int Calc(int nResult[],int len,int nNumb);
void main()
{
int nResult[128]={0}; //定义一个长度为512的数组用于保存结果
int len=1 ; //长度定义?
nResult[0]=1; //数组第一个元素赋值为1
for(int i=2;i<=10;i++){ //阶乘计算
len=Calc(nResult,len,i);//递归 由长度len得len
}
for(int i=len-1;i>=0;i--){
printf("%d",nResult[i]);
}
printf("\n");
getchar();
return;
}
int Calc(int nResult[],int len,int nNumb)
{
int i,rem=0;
for(i=0;irem+=nResult[i]*nNumb;
nResult[i]=rem%10;
rem=rem/10;
}
while(rem>0){
nResult[len]=rem%10;
len++;
rem=rem/10;
}
return len;
}
#include
void main()
{
double Ni(int n);
double ni= 0.0;
for(int n= 1; n <= 10; n++) ni+= Ni(n);
printf("%lf\n", ni);}
double Ni(int n)
{
double ret= 1.0;
while(n)
{
ret*= n--;
}
// printf("%lf\n", ret);
return ret;
}
#include#includelongxx(longx){if(x=1)return1;elsereturnxx(x-1);}intmain(){longsum=0,i;for(i=1;i<=10;i++)sum+=xx(i);printf("%d",sum);return0;}