鍵入兩個數,求其最大公約數和最小公倍數----初學c
阿新 • • 發佈:2018-12-17
#include <stdio.h> void fun1(int *x,int *y); //將兩個數比較大小,使x>y void fun2(int *a,int *b); //輾轉反側法 void main() { /*定義變數*/ int num1,num2,m,n; int max,min; while(1) { /*初始化變數*/ num1 = 0; num2 = 0; max = 0; min = 0; scanf("%d%d",&num1,&num2); //輸入兩個數 m = num1; //儲存資料 n = num2; fun1(&num1,&num2); if(num2 == 0) //判斷是否輸入0 { printf("輸入錯誤,輸入不可以為0\n"); } else { fun2(&num1,&num2); max = num1; //儲存最大公約數結果 min = m*n/max; //最小公倍數計算 printf("%d和%d的最大公約數是%d,最小公倍數是%d\n",m,n,max,min); } } } void fun1 (int *x,int *y) { if(*x < *y) { int a = 0; a = *x; *x = *y; *y = a; } } void fun2 (int *a,int *b) { while(*b !=0) { *a=*a % *b; fun1(a,b); } }