zoukankan      html  css  js  c++  java
  • 小白书--求 n!

    简单n!

    Time Limit: 1000MS Memory limit: 65536K

    题目描述

    给定一个数n(0 <= n <= 150), 求0到n中所有数的阶乘。

    输入

    题目有多组数据,处理到文件结尾。输入一个数n。

    输出

    输出阶乘,形式如:4! = 24.每组数据输出后跟一个空行。

    示例输入

    1
    4

    示例输出

    0! = 1
    1! = 1
    
    0! = 1
    1! = 1
    2! = 2
    3! = 6
    4! = 24

    #include<stdio.h>
    
    #include<string.h>
    const int maxn = 3000;
    int f[3000];
    int main()
    {
        int i, j, k, n;
        while(scanf("%d", &n) != EOF)
        {
            memset(f, 0, sizeof(f));
            f[0] = 1;
                printf("0! = 1
    ");
            if(n >= 1)
                printf("1! = 1
    ");
            for(i=2; i<=n; i++)
            {
                int c = 0;
                for(j = 0; j < maxn; j++)
                {
                     int s = f[j] * i + c;
                     f[j] = s % 10;
                     c = s / 10;
                }
    
            for(j = maxn -1 ; j >= 0; j--) if(f[j]) break;//忽略前导0.
            for(k = j; k >= 0; k--)
            {
                if(k == j)
                     printf("%d! = ", i);
                printf("%d", f[k]);
            }
            printf("
    ");
            }
            printf("
    ");
        }
        return 0;
    }
    


    每天训练发现我比别人做的好慢,但是理解的更深刻,如果一开始学一个新知识点就搜模板,那么这样的人是走不远的,毕业之后带走的只有思维,什么荣誉,奖杯都已经不重要了。
  • 相关阅读:
    jdbc入门
    mysql 各项操作流程
    python中的细小知识点罗列
    Linux之高级指令
    linux之进阶指令
    Linux之基础指令
    STL之适配器
    STL之谓词
    STL之函数对象
    STL之map容器和multimap容器
  • 原文地址:https://www.cnblogs.com/6bing/p/3931249.html
Copyright © 2011-2022 走看看