题目地址
解题思路
解题思路,就是像我们平时做除法那样就可以了,首先把被除数变得比除数小,也就是a = a%b 或者是a = a - a/b*b,这样接下来的除法得到的就是小数点后的数字了。接下来被除数每次乘上十然后除以除数,然后被除数减去得到的商乘上除数,然后在乘十计算,一直到第p个小数位。
AC代码
#include <iostream>
using namespace std;
int main()
{
double a, b, p;
cin >> a >> b >> p;
a -= int (a / b) * b;
for (int i=1; i<=p+2; i++)
{
a *= 10;
if (i>=p)
{
int temp = int(a / b);
cout << temp;
}
a -= int(a/b) *b;
}
cout << endl;
return 0;
}