C語言學習:最大公約數
阿新 • • 發佈:2018-12-19
/*輸入兩個整數m和n(1<=m,n<=10000) ,其中m表示分子,n表示分母。輸出分數化簡後的最簡形式。 函式原型:int Gcd(int a, int b); 函式功能:計算a和b的最大公約數,輸入資料超出有效範圍時返回-1。*/ #include<stdio.h>
int Gcd(int a, int b); int min(int a,int b); int main() { int m,n,c; printf("Input m,n:"); scanf("%d,%d",&m,&n); c=Gcd(m,n); if(c==-1) { printf("Input error!"); } else { printf("%d/%d",m/c,n/c);
} } int Gcd(int a,int b) { if(a<1||b>10000||b==0) { return -1; } int c,i,e; c=min(a,b); for(i=1;i<=c;i++) if(a%i==0&&b%i==0) { e=i; } return e; } int min(int a,int b) { int c; if(a>b) {c=b;} else{c=a;} return c; }