分數可以表示爲“分子/分母”的形式。編寫一個程序,要求用戶輸入一個分數,然後將其約分爲最簡分式。最簡分式是指分子和分母不具有可以約分的成分了。如6/12可以被約分爲1/2。當分子大於分母時,不需要表達爲整數又分數的形式,即11/8還是11/8;而當分子分母相等時,仍然表達爲1/1的分數形式。
輸入格式:
輸入在一行中給出一個分數,分子和分母中間以斜槓“/”分隔,如: 12/34
表示34分之12。分子和分母都是正整數(不包含0,如果不清楚正整數的定義的話)。
提示:在scanf的格式字符串中加入“/”,讓scanf來處理這個斜槓。
輸出格式:
在一行中輸出這個分數對應的最簡分式,格式與輸入的相同,即採用“分子/分母”的形式表示分數。如 5/6
表示6分之5。
60/120輸出樣例:
1/2
#include<stdio.h>
int gcd(int n,int m){
int r=n%m;
while(r){
n=m;
m=r;
r=n%m;
}
return m;
}
int main(){
int a,b;
char c;
scanf("%d%c%d",&a,&c,&b);
int i=gcd(a,b);
printf("%d/%d\n",a/i,b/i);
return 0;
}