c語言 求兩個整數的最大公約數

/***************************************************************************************
author:徐權
data:20150723
function:求兩個整數的最大公約數


 ***************************************************************************************/


#include<stdio.h>
#include<stdlib.h>
#include<math.h>


#define LEN_ONE 50  //定義三角形的邊長,可以爲整數,也可以爲小數
#define LEN_TWO -20  //自己用的時候自己調


int max_common(int, int);


int main(void)
{
int x = LEN_ONE;
int y = LEN_TWO;
int z;


x = abs(x);  //將xy進行求絕對值計算,避免出現負數情況
y = abs(y);


if (x < y) //使得x永遠不小於y
{
x = x + y;
y = x - y;
x = x - y;
}


//調用函數,求最大公約數
z = max_common(x, y);
printf("%5d 與%5d 的最大公約數是:%5d!\n",LEN_ONE,LEN_TWO,z);
system("pause");
return 0;
}
int max_common(int x, int y)
{
int z;
while (y)
{
z = x % y;
x = y;
y = z;
}
return x;
}
發佈了61 篇原創文章 · 獲贊 18 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章