牛牛想对一个数做若干次变换,直到这个数只剩下一位数字。 变换的规则是:将这个数变成 所有位数上的数字的乘积。比如285经过一次变换后转化成2*8*5=80. 问题是,要做多少次变换,使得这个数变成个位
Posted olive_gyr
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了牛牛想对一个数做若干次变换,直到这个数只剩下一位数字。 变换的规则是:将这个数变成 所有位数上的数字的乘积。比如285经过一次变换后转化成2*8*5=80. 问题是,要做多少次变换,使得这个数变成个位相关的知识,希望对你有一定的参考价值。
牛牛想对一个数做若干次变换,直到这个数只剩下一位数字。
变换的规则是:将这个数变成 所有位数上的数字的乘积。比如285经过一次变换后转化成2*8*5=80.
问题是,要做多少次变换,使得这个数变成个位数。
输入描述:
输入一个整数。小于等于2,000,000,000。
输出描述:
输出一个整数,表示变换次数。
输入例子:
285
输出例子:
2
1 #include<stdio.h> 2 #include<stdlib.h> 3 int main() 4 { 5 int n; 6 scanf("%d",&n); 7 if(n==0)//n是0,输出 0次 8 printf("0"); 9 else 10 { 11 int result = 1; 12 int count = 0; 13 14 while(n/10)//n是个位数,输出0次 15 { 16 while(n) 17 { 18 result *= n%10; 19 n = n/10; 20 } 21 printf("%d\\n",result);//输出每个数字相乘的积,作为新的n,本题中不需要此行的输出 22 count++; 23 n = result; 24 result = 1; 25 } 26 27 printf("%d",count); 28 } 29 return 0; 30 }
以上是关于牛牛想对一个数做若干次变换,直到这个数只剩下一位数字。 变换的规则是:将这个数变成 所有位数上的数字的乘积。比如285经过一次变换后转化成2*8*5=80. 问题是,要做多少次变换,使得这个数变成个位的主要内容,如果未能解决你的问题,请参考以下文章
2017年校招全国统一模拟笔试(第三场)编程题集合--Python
2017年校招全国统一模拟笔试(第三场)编程题集合--Python
2022-06-07:牛牛今年上幼儿园了,老师叫他学习减法, 老师给了他5个数字,他每次操作可以选择其中的4个数字减1, 减一之后的数字不能小于0,因为幼儿园的牛牛还没有接触过负数。 现在牛牛想知道,