首页 > 代码库 > 分数化小数(C++)
分数化小数(C++)
输入整数a, b ,c, 输出a/b的小数形式,精确到小数点后c位,a, b ≤ 10^6, c ≤ 100。输入包含多组数据, 结束标记为a = b = c = 0。
答案如下
#include<iostream> #include<cmath> using namespace std; int main() { int a, b, c, m; int con[100]; cin >> a >> b >> c; while (a != 0 && b != 0 && c != 0) { cout << a / b << "."; m = a % b; for (int i = 0; i <= c; i++) { con[i] = m * 10 / b; m = m * 10 % b; } if (con[c] >= 5) { con[c - 1]++; for (int i = c - 1; i >= 0; i--) if (con[i] == 0 && con[i + 1] >= 5 && i - 1 >= 0) con[i - 1]++; } for (int i = 0; i < c; i++) cout << con[i] ; cout << endl; cin >> a >> b >> c; } return 0; }
分数化小数(C++)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。