【题目描述】
分数$\frac{a}{b}$化为小数后,小数点后第n位的数字是多少?
【输入】
三个正整数a,b,n,相邻两个数之间用单个空格隔开。0<a<b<100,1<=n<=10000。
【输出】
一个数字。
【输入样例】
1 2 1
【输出样例】
5
#include<iostream>
using namespace std;
int main() {
int a = 0, b = 0, n = 0;
cin >> a >> b >> n;
a = a % b;
int temp = 0;
for (int i = 0; i < n; i++) {
a = a * 10;
temp = a / b;
a = a % b;
}
cout << temp;
}
n可能是10000位,用double类型直接除肯定是不行的,double的精度也只有几十位。我们可以for循环模拟除法的过程即可。