以下是用C++解题的代码:

#include <iostream>
#include <string>
using namespace std;

string divide(int a, int b, int n) {
    string result = to_string(a / b); // 计算整数部分
    result += '.'; // 添加小数点

    int remainder = a % b; // 计算余数
    for (int i = 0; i < n; i++) {
        remainder *= 10; // 将余数乘以10
        result += to_string(remainder / b); // 添加小数部分的每一位
        remainder = remainder % b; // 更新余数
    }

    return result;
}

int main() {
    int a, b, n;
    cin >> a >> b >> n;
    string result = divide(a, b, n);
    cout << result << endl;
    return 0;
}

这段代码首先定义了一个名为divide的函数,该函数接受三个参数:被除数a,除数b和小数位数n。函数的返回值是一个字符串,表示a/b的前n位小数商。函数内部首先计算a/b的整数部分,并将其转换为字符串后存入result变量中。然后,计算a%b得到余数remainder,并进入一个循环,每次将余数乘以10得到新的余数,然后将新的余数除以b得到小数部分的一位数字,并将其转换为字符串后添加到result中。最后,更新余数remainder为新的余数的余数。循环执行n次后,result中就包含了a/b的整数部分和小数部分的前n位数字。

main函数中,首先读取输入的a、b和n。然后调用divide函数得到结果,并输出到屏幕上

用C++解题:【题目描述】编程求ab的前n位小数商。ab为int范围内的整数。【输入】一行包含三个整数abn。【输出】一行数字该数字包括整数部分小数点及小数点后n位小数。【样例输入】976150【样例输出】159016393442622950819672131147540983606557377049180

原文地址: https://www.cveoy.top/t/topic/ipf9 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录