最簡分式
阿新 • • 發佈:2018-12-05
題目內容:
分數可以表示為“分子/分母”的形式。編寫一個程式,要求使用者輸入一個分數,然後將其約分為最簡分式。最簡分式是指分子和分母不具有可以約分的成分了。如6/12可以被約分為1/2。當分子大於分母時,不需要表達為整數又分數的形式,即11/8還是11/8;而當分子分母相等時,仍然表達為1/1的分數形式。
輸入格式:
輸入在一行中給出一個分數,分子和分母中間以斜槓“/”分隔,如: 12/34 表示34分之12。分子和分母都是正整數(不包含0)。
提示:在scnaf的格式字串中加入“/”。
輸出格式:
在一行中輸出這個分數對應的最簡分式,格式與輸入的相同,即採用“分子/分母”的形式表示分數。如 5/6 表示 6分之5
輸入樣例:
60/120
輸出樣例:
1/2
#include<stdio.h> int main() { int m,n,mt,nt; scanf("%d/%d",&m,&n); mt = m; nt = n; if( m > n){ int t = m; m = n; n = t; } int r = n%m; while( r ){ //輾轉相除法 n = m; m = r; r = n%m; } mt = mt/m; nt = nt/m; printf("%d/%d\n",mt,nt); return 0; }