20200802 给定正整数n,求不大于n的正整数的阶乘的和(即求1!+2!+...+n!),输出阶乘的和 (奥赛一本通p67 1题)

# include <bits/stdc++.h>
using namespace std;
////第一种解法,用一层for循环
//int main()
//{
//   int n;
//   scanf("%d",&n);
//   long long s=0,t=1;
//   for(int i=1;i<=n;i++)
//     { t *=i;
//       s+=t;
//     }
//     printf("%lld",s);
//     return 0;
//    }

//第二种解法,用二层for循环
int main()
{
int n;
scanf("%d",&n);
long long s=0,t=1;
for(int i=1;i<=n;i++)
{
  t=1;
  for(int ls=1;ls<=i;++ls)
  {
    t*=ls;
  }
    s+=t;
  }
  printf("%lld",s);
  return 0;
}

posted @ 2020-08-02 09:17  财盛  阅读(1891)  评论(0编辑  收藏  举报