B---连分数
#include<iostream> #include<string> using namespace std; typedef long long ll; int main() { int t; cin >> t; string s; getchar(); while (t--) { ll a, b; getline(cin, s); sscanf(&s[0], "%lld %lld", &a, &b);//将字符串按格式转换为两个数字a,b cout << a << "/" << b << " = "; if (a % b == 0) { cout << a / b << endl; } else {//递归求解 ll c, d, e, sum = 0; do { c = a / b; d = a % b; a = b; b = d; if (a % b != 0) { sum++; cout << c << "+1/{"; } else { cout << c << "+1/"; } } while (a % b != 0); cout << a / b; for (int i = 0; i < sum; i++) { cout << "}"; }cout << endl; } } }