写得着急,做得简陋,敬请谅解。
注:输入内容中必须有.。
// Author:PanDaoxi #include#include using namespace std; int zdgys(int a,int b){ for(int i=a>b?a:b;i>=1;i--){ if(a%i==0&&b%i==0) return i; } } int main(){ string x; cin>>x; int len=x.length(),y,z, zs=0,xs=0; for(int i=0;i if(x[i]=='.'){ z=i-1; y=i+1; break; } } // 实现整、小分离 // 整数 x[0~z] 小数 x[y~(len-1)] for(int i=0;i<=z;i++){ zs+=pow(10,z-i)*(x[i]-'0'); } // cout< xs+=pow(10,len-i-1)*(x[i]-'0'); } // 小数部分位数为 len-y int b=pow(10,len-y),a=xs+zs*b,gys=zdgys(a,b); cout<



