C语言 选择题填空题
下面程序段的功能是计算1000!的末尾含有多少个零,请选择填空,(提示:只要算出1000!中含有因数5的个数即可)for(k=0,i=5;i<=1000;i+=5){m=...
下面程序段的功能是计算1000!的末尾含有多少个零,请选择填空,(提示:只要算出1000!中含有因数5的个数即可)
for(k=0,i=5;i<=1000;i+=5)
{
m=i;
while(_____) {k++;m=m/5;}
}
答案是m%5==0
我不明白(提示:只要算出1000!中含有因数5的个数即可)中含有因数5的个数是什么意思
麻烦帮每一步帮我详细解释一下 我是初学者 有点迷糊 展开
for(k=0,i=5;i<=1000;i+=5)
{
m=i;
while(_____) {k++;m=m/5;}
}
答案是m%5==0
我不明白(提示:只要算出1000!中含有因数5的个数即可)中含有因数5的个数是什么意思
麻烦帮每一步帮我详细解释一下 我是初学者 有点迷糊 展开
5个回答
展开全部
不是要算末尾有多少0嘛,也就说如果让1000!一直除以10,看能除多少次.
那么,这个问题就变相成为:一直除以5*2,看能除多少次.想象看,能被5整除的数只有末尾是5和0的数字,也就是说只有XXXXXX5,和XXXXXX0是可以整除5的,其中X表示任意数字.而从1到1000,能整除2的有的是,远远超过能整除5的,所以问题就变相成为看有多少个能整除5的数字了.
while的括号中是m%5 == 0,就是保证让m能一直整除5,知道m不能整除5为止.
对于整个的for循环,只要从5开始,每次都+=5,因为只有这些数字才能整除5.
那么,这个问题就变相成为:一直除以5*2,看能除多少次.想象看,能被5整除的数只有末尾是5和0的数字,也就是说只有XXXXXX5,和XXXXXX0是可以整除5的,其中X表示任意数字.而从1到1000,能整除2的有的是,远远超过能整除5的,所以问题就变相成为看有多少个能整除5的数字了.
while的括号中是m%5 == 0,就是保证让m能一直整除5,知道m不能整除5为止.
对于整个的for循环,只要从5开始,每次都+=5,因为只有这些数字才能整除5.
展开全部
含有因数5的个数---指的是能被五整除的数的个数
m=m/5
等价于
m除以5的商,不计余数
for(k=0,i=5;i<=1000;i+=5)
//k,i的初值为0,5
i在小于或等于1000的情况下执行下面的语句,i每次加5
{
m=i;
//i复制给m
while(_____)
{k++;m=m/5;}
//()中内容为真的情况下执行下面一句话,k+1,m除以5
}
m=m/5
等价于
m除以5的商,不计余数
for(k=0,i=5;i<=1000;i+=5)
//k,i的初值为0,5
i在小于或等于1000的情况下执行下面的语句,i每次加5
{
m=i;
//i复制给m
while(_____)
{k++;m=m/5;}
//()中内容为真的情况下执行下面一句话,k+1,m除以5
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-01-01
展开全部
就是可以除以多少个5,而不会变成分数,比如100可以除以两个5,而不变为分数,故其末尾含两个0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
10含有0的个数是1 是因为10=2*5 只含有1个5 这么说 明白了吧?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C
1
3
3
数据类型
1
3
3
数据类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |