提交时间:2022-07-10 19:37:09

运行 ID: 29087

#include <iostream> using namespace std; string decimal(float a, short num) { char arr[64]; for (int i = 0; i < 64; i++) { arr[i] = 48; } short x = 0; bool b = 0; if (a < 0) { b++; a *= -1; } for (short i = 0; i <= num; i++) { a *= 10; } int c = a; if (c % 10 >= 5) { c += 10; } c /= 10; for (int i = c; i > 0 || x < 4; i /= 10, x++) { if (x == num) { arr[x] = '.'; x++; } arr[x] = i % 10 + 48; } if (b) { arr[x] = '-'; x++; } for (int start = 0, end = x - 1; start < end; start++, end--) { char temp = arr[start]; arr[start] = arr[end]; arr[end] = temp; } string str = ""; for (int i = 0; i < x; i++) { str += arr[i]; } return str; } int main() { float arr[2]; for (int i = 0; i < 2; i++) { cin >> arr[i]; } cout << decimal(arr[0] / arr[1], 3) << " " << 2 * arr[1] << endl; return 0; }