编写程序,要求用户输入一个分数,然后将其约分为最简分式。提示:首先计算出分子和分母的最大公约数,然后用分子和分母分别取除以它们的最大公约数,所得即为最简分式。例如:分子为16,分母为24,计算得分子和分母的最大公约数为8,故用16和24分别去除以它们的最大公约数8,得到新的分子为2,新的分母为3,故最简分式为2/3。
输入格式:
一个分式
输出格式:
输入对应的最简分式
输入样例:
6/12
输出样例:
1/2
int fun(int a, int b)
{
if (b == 0)
return a;
else
return fun(b, a % b);
}
int main(){
int a,b;
scanf("%d/%d",&a,&b);
printf("%d/%d",a/fun(a,b),b/fun(a,b));
return 0;
}
通过用辗转相除法求最大公约数
答案正确
分数
10 / 10
评测详情
测试点 | 提示 | 内存(KB) | 用时(ms) | 结果 | 得分 | |
a | 336 | 3 | 答案正确 | 10 / 10 |