`

n!(<100)

    博客分类:
  • C
阅读更多
 #include "stdio.h" 

void main() 
{ 
int n,i,sum=1; 
printf("请输入N的值:"); 
scanf("%d",&n); 
for(i=1;i<=n;i++) 
sum=sum*i; 
printf("%d",sum); 
}
分享到:
评论
1 楼 chenchuxin 2008-03-18  
#include "stdio.h"
void main()
{
int fun(int x);
float jc(int x);
int n,i;
float k;
printf("type in the n!\n");
scanf("%d",&n);
i=fun (n);
k=jc (n);
printf("%d! is %10.0f\nthere are %d zero!\n",n,k,i);
}


int fun(int x)
{
int i=0;
while(x!=0)
{
x=x/5;
i+=x;
}
return (i);
}


float jc(int x)
{
float i;
if (x==0||x==1)
i=1;
else
i=jc(x-1)*x;
return (i);
}
阶乘jc()函数是仿照谭浩强的c程序设计编写的,由于位数的关系只能算到12!你可以自己改精度

求零部分是自己想出来的,用的是n!=1*2*3*4*5*6*7*8*9*10*11……=1*2*3*(2*2)*5*(2*3)*7*(2*2*2)*(3*3)*(2*5)*11……

后面的式子中有几个5就有 就会得到几个末位0的原理,自己想一下,这个函数可以算很多数。

相关推荐

    求满足1+2+3+…n<100的最大正整数n的MATLAB程序

    求满足1+2+3+…n&lt;100的最大正整数n的MATLAB程序

    C语言n的阶乘n!程序

    i &lt;= n; ++i) { fact *= i; } return fact; } ``` 在这个迭代版本的`factorial()`函数中,我们使用一个循环,从1累乘到n,逐步计算阶乘值。 为了确保程序的正确性,我们通常会进行调试。这可能包括运行各种...

    求n!输出1-N的阶乘

    求n!输出1-N的阶乘.c语言,一个.cpp文件

    阶乘计算 编写程序,对给定的n(n≦100),

    在给定的文件中,我们遇到了一个具体的编程挑战,即将给定的n(n≦100)的阶乘结果的每一位数字计算出来并以数组的形式展现。 为了应对这一挑战,文件提供了一种创新的数据存储方式——使用一维数组来存储那些超大...

    计算N (N<50)个偶数之和

    对键盘输入的字符进行判断,如果不是数字,显示提示,输入两位数。对输入的数字进行判断,如果输入的数不在1~50之间,提示重新输入。结束时,显示提示,按任意键退出。 在程序的开始显示自己的学号及姓名(拼音)...

    如何求一个大数的N!

    这里定义了一个宏`I`,代表每一块存储的上限,即100亿。这是因为大数存储时,每个元素只存储部分位数,这里选择每块存储10位数字,方便处理和理解。 2. **数组声明**: ```cpp __int64 a[35670]; ``` 定义了一...

    无向图连通子图_并查集.cpp 最小生成树.cpp

    测试数据由m+1行构成,第一行为两个正整数n(1&lt;n&lt;=30)和m(1&lt;m&lt;100),分别表示顶点数(顶点编号为1,2,…,n)和边数,其后是m行数据,每行数据是一条边的信息,包括两个数字,分别表示该边关联的两个顶点。...

    C++版本计算n阶乘末尾0的个数原理讲解及代码实现

    ### C++版本计算n阶乘末尾0的个数原理讲解及代码实现 #### 概述 本篇文章主要介绍如何使用C++编程语言来计算一个正整数n的阶乘末尾0的数量,并通过示例代码加以说明。该方法不仅阐述了理论基础,还提供了具体的实现...

    括号配对问题

    第一行输入一个数N(0&lt;N&lt;=100),表示有N组测试数据。后面的N行输入多组输入数据,每组输入数据都是一个字符串S(S的长度小于10000,且S不是空串),测试数据组数少于5组。数据保证S中只含有"[","]","(",")"四种字符 ...

    c#中如何使用random实现在100个数中产生不同的n<100的算法

    本文将深入探讨如何使用C#中的`Random`类实现一个算法,该算法能够在1到100之间生成不同的整数,具体数量为n(n&lt;100)。我们将基于提供的代码片段进行分析和解释,旨在帮助读者理解随机数生成的原理以及如何避免重复...

    数据结构 迷宫问题.cpp

    第一行数据表示一个 n*n (n&lt;=100)的迷宫;第二行开始的n行为迷宫数据。 其中:0表示路,1表示墙,起点在左上角 &lt;1,1&gt; 的位置,终点在右下角 &lt;n,n&gt; 的位置。 输出:若有解,输出从入口到出口的一条路径,否则输出 ...

    数据结构 单链表程序

    int r[100],n,i,x; cout&lt;&lt;"请输入线性表中元素的个数!"&lt;&lt;endl; cin&gt;&gt;n; cout&lt;&lt;"请输入线性表中每个元素!"&lt;&lt;endl; for(i=0;i&lt;n;i++) {cout&lt;&lt;"请输入第"&lt;&lt;i+1&lt;&lt;"个元素!"&lt;&lt;endl; cin&gt;&gt;r[i]; } ...

    ACM 肿瘤检测

    一张CT扫描的灰度图像可以用一个N*N(0&lt;N&lt;100)的矩阵描述,矩阵上的每个点对应一个灰度值(整数),其取值范围是0-255。我们假设给定的图像中有且只有一个肿瘤。在图上监测肿瘤的方法如下:如果某个点对应的灰度值...

    我们第一行包括两个整数n,k(1<=n<=100,k<=6e5),表示有n个数字,目标和为k 第二行输入n个整数(c1 c2

    输入描述:对于每一个案例,我们第一行包括两个整数n,k(1&lt;=n&lt;=100,k&lt;=6e5),表示有n个数字,目标和为k。第二行输入n个整数(c1 c2...cn),(1&lt;=ci&lt;=2e5),表示每一张卡片上的数字。输出描述:输出一个形为a/b的最简分数,表示...

    修建草坪 绿

    有一个n*m的草坪(1&lt;=n,m&lt;=100),草坪中的草原来的高度都是100。现在使用割草机修剪草坪,来得到各种各样的图案。割草机只 能横着或者竖着割草。每次割草都会先设定一个高度,割完之后会把比设定高度高的草都割成设定...

    test1-matlab实验.m

    编写一个MATLAB函数文件,该函数的功能是求出最大的n值,使得 n! &lt;realmax 。通过M文件调用该函数文件,计算realmax为56000时的n值,且realmax的值通过键盘输入。

    java 实现有数量不限的面值为100,50,20,10,5,1元的纸币,问要组成N(N<=10^6)共有多少种组合方式

    java 实现有数量不限的面值为100,50,20,10,5,1元的纸币,问要组成N(N&lt;=10^6)共有多少种组合方式;其中包括了爆搜的方法和动态规划的方法

    数学运算中的四舍五入

    - 如果 `n &lt; 0`,则直接返回原数,不进行四舍五入操作。 - 如果 `num` 大于等于 0,那么加上 0.5 并乘以 `pow(10, n)` 来实现向上的四舍五入。 - 如果 `num` 小于 0,则减去 0.5 并乘以 `pow(10, n)` 来实现向下...

    0-1矩阵(字符串数组).cpp

    输入第一行为两个整数m和n(0&lt;=m,n&lt;=100)表示二维数组行数和列数,其后为m行数据,每行n个整数(0或1),输入数据中不会出现同一行有两个最长1序列的情况。 输出说明 找出每一行最长的连续1序列,输出其起始位置...

    n阶乘(n比较大时)

    阶乘表示为一个正整数n与小于等于n的所有正整数的乘积,通常用符号"!"来表示。例如,5的阶乘(5!)等于5×4×3×2×1=120。然而,当我们谈论“n阶乘(n比较大时)”,这个问题就涉及到大数处理和计算效率。 在...

Global site tag (gtag.js) - Google Analytics