C语言趣味程序的一个问题

C语言趣味程序的一个问题,第1张

     这段程序用于计算100的阶乘末尾的零的个数,思路如下:末尾零的个数就代表含有因子10的个数,而10=2*5,所以每一对2和5因子就对应结果末尾的一个零,所以结果末尾的零的个数即为因子2和5的组合的数量,亦即为因子2和5中数量少的一个,很明显因子2的个数比因子5的个数多,所以只需求100以内因子5的个数。

     首先计算100以内能被5整除的个数,对应代码:

   for(a=5 a<=100 a+=5)  

   {

      count++

     又因为能被25整除的数含有两个因子5,所以还须加1,对应代码:

   if(!(a%25)) count++

#include<stdio.h>

void main()

{

int day, x1, x2

printf("狗熊到玉米地吃了包谷")

printf("第一天吃了一半又拿走一个回去喂小狗熊。\n")

printf("第二天又去吃了剩下的一半,走是任然带一个回去。/n")

printf("以后每天都吃前一天剩下的一半,拿走一个。/n")

printf("到了第十天时,地里只剩下一个包谷。求地里一共有多少包谷。/n")

day=10

x2=1

while (day>0)

{

x1=(x2+1)*2

x2=x1

day--

}

printf("包谷总数=%d\n",x1)

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/7826844.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存