输入一个自然数n,求n!,同时统计结果中有多少个0程序分析解释#include "stdio.h" void main() { int fun(int x); float jc(int x); int n,i; float k; printf("type in the \n"); scanf("%d",&n); i=fun (n); k=jc (n); printf("%d!is %10.0f\n

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/08 19:59:23

输入一个自然数n,求n!,同时统计结果中有多少个0程序分析解释#include "stdio.h" void main() { int fun(int x); float jc(int x); int n,i; float k; printf("type in the \n"); scanf("%d",&n); i=fun (n); k=jc (n); printf("%d!is %10.0f\n
输入一个自然数n,求n!,同时统计结果中有多少个0程序分析解释
#include "stdio.h"
void main()
{
int fun(int x);
float jc(int x);
int n,i;
float k;
printf("type in the \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);
}
需要此程序每步的解释

输入一个自然数n,求n!,同时统计结果中有多少个0程序分析解释#include "stdio.h" void main() { int fun(int x); float jc(int x); int n,i; float k; printf("type in the \n"); scanf("%d",&n); i=fun (n); k=jc (n); printf("%d!is %10.0f\n
不知道你要详细到什么程度!
首先要明白求N!结果中未尾0个数的算法思想:N的2的因子多于5的因子,有一个5的因子就可得到一个0,N
可以分解出几个5的因子就可得到几个0.(例如求2008!未尾0的个数:2008/5+2008/25+2008/125+2008/625=500或2008/5+401/5+80/5+16/5=500)
#include "stdio.h" /*包含标准输入输出文件*/
void main() /*主函数*/
{
int fun(int x); /*声明fun函数,此函数用于求N!未尾0的个数*/
float jc(int x); /*声明jc函数,此函数用于求N!*/
int n,i;
float k;
printf("type in the n!\n"); /*输出提示信息*/
scanf("%d",&n); /*输入一个整数N*/
i=fun (n); /*求N!未尾0的个数*/
k=jc (n); /*求N!*/
printf("%d!is %10.0f\nthere are %d zero!\n",n,k,i); /*输出结果*/
}
int fun(int x)/*定义fun函数*/
{
int i=0;
while(x!=0)/*请参照求2008!未尾0的个数仔细理解此while循环*/
{
x=x/5;
i+=x;
}
return (i); /*返回N!未尾0的个数*/
}
float jc(int x)/*定义jc函数*/
{
float i;
if (x==0||x==1)/*0!=1、1!=1此为递归调用的出口*/
i=1;
else
i=jc(x-1)*x;/*递归调用jc函数(执行N!=(N-1)!*N)*/
return (i); /*返回N!*/
}
不懂的话,多看看C语言入门书籍!

vb,输入一个自然数n,求n!同时统计结果中有多少个0 c++编程:输入一个自然数n,求 ,同时统计结果中有多少个0. 输入一个自然数n,求n!,同时统计结果中有多少个0.上机实习题:算法实现:输入一个自然数n,求n!,同时统计结果中有多少个0用c来编写,不要用c#或者c++来编写啊,我只学了c好了我会追加分数的, 输入一个自然数n,求n!,同时统计结果中有多少个0程序分析解释#include stdio.h void main() { int fun(int x); float jc(int x); int n,i; float k; printf(type in the ); scanf(%d,&n); i=fun (n); k=jc (n); printf(%d!is %10.0f 求用PASCAL编程 统计某个自然数区间,到底有多少个3的倍数,输入两个自然数M和N,保证M小于N,表示M到N的区间,包含M及N输出一个自然数X,表示M到N之间是3倍数的个数 C语言 输入一个自然数N 求第N个素数是多少 vf 随机输入自然数n以内所有是5的倍数的自然数并统计个数 vb求n!(n!=1*2*3*...*n),n是自然数.编程要求:1.单击窗体时用InputBox()输入n的值.2.结果存在变量Term中.3.在窗体中输出Term的结果.4.程序编译通过后,输入n=10进行测试 求一个模拟扔硬币统计连续正面反面次数的程序输入扔的次数,然后统计出连续2次,3次,.直到n次的连续正面和反面次数的结果. 用C语言编写蛇形矩阵编制一个程序,对于输入的一个自然数n(n≤15),把 n^2个自然数1,2,3,…n^2 按蛇形方式存入一个 的方阵中,并把结果存入一个文件.要完整的源程序奥,最好能在关键位置加上 1.编程,先输入n,再输入n个实数并分别统计正数的和、负数的和,然后输出统计结果.(C语言) c程序:在主函数中输入N个人的某门科的成绩,编写两个函数,分别求:1.最大值,最小值,平均值;2.分别统计各分数段人数结果在主函数中输出 pascal:数据统计有n个自然数属于【1,2000000000】现在统计这些自然数出现的次数,并按自然数从小到大输出统计结果例 输入8 2 4 2 4 5 100 2 100 输出 2 3 4 2 5 1 c语言解输入n和相应的n个数,统计输入的数中负数、零及正数的个数输入n和相应的n个数,统计输入的数中负数、零及正数的个数 描述 输入n个整数,统计每个数出现的次数.输入 第一行是一个整数n(1 VB 编写程序,请用户输入一个自然数N,求前N个质数,并将其存放一个数组中(质数是除了1和本身之外没有其他约数的数,第一个质数是2) VB 编写程序,请用户输入一个自然数N,求前N个质数,并将其存放一个数组中.(质数是除了1和本身之外没有其他约数的数,第一个质数是2) C语言编写一个求n阶乘的函数,在主函数中输入n,调用函数求n阶乘.