两个整数做除法,有时会产生循环小数,其循环部分称为:循环节。
比如,11/13=6=>0.846153846153….. 其循环节为[846153] 共有6位。
//循环节长度
#include<stdio.h>
int main()
{
int n, m;
int i = 0;
scanf("%d %d", &n, &m);
n = n % m;
int b = 0;
b = n;
//不断的对除数取余,然后乘10后再取余,直到余数在之前出现过或者为0 结束
do
{
n = n * 10;
n = n % m;
i++;
} while (n != b);
printf("%d", i);
return 0;
}