阶乘之和求后六位数字(包含时间测试)

#include<stdio.h>
//阶乘之和求最末六位
#include<time.h>//用于测试运行时长
#include<Windows.h>
int main(void)
{
    const int MOD = 1000000;//求后六位直接将数取模
    int n;

    scanf("%d", &n);
    int sum = 0;
    for (int i = 1; i <= n; i++)
    {
        int factorial = 1;
        for (int j = 1; j <= i; j++)
        {
            factorial = (factorial * j) % MOD;
        }
        sum = (sum + factorial) % MOD;
    }
    
    printf("%d\n", sum);
    printf("time used = %.2f", (double)clock() / CLOCKS_PER_SEC);//clock()用于获取程序运行的时间,并且时间包括键盘输入的时间,除以CLOCKS_PER_SEC就可以得到程序运行的秒数,如果想要消除键盘输入时间,那么需要用windows命令echo 数字|文件名来测试
    return 0;
}

 

posted @ 2021-01-22 10:46  loliconsk  阅读(404)  评论(0)    收藏  举报