求兩個數的最大公約數代碼
阿新 • • 發佈:2019-03-17
print std 會有 %d 最小 等於 == stdio.h 進行 兩個數的最大公約數即為可以被兩個數整除的最大值,所以會有兩種情況。
一種是不等於輸入的兩個值。
一種是等於兩個數中最小的那個。
所以代碼用到if語句進行第一次判斷。
第二次判斷則寫在for語句中進行遞減數循環條件判斷。
此代碼是以b為最大值為前提所寫。
#include<stdio.h> #include<stdlib.h> int main() { int a, b,i; scanf("%d%d", &a, &b); if (b < a)//確保b為最大值 { i = b; b = a; a = i; } if (b%a == 0) //第一次判斷 { printf("最大公約數為%d\n", a); system("pause"); return 0; } if (b%a != 0) { for (i = a; i>0;i--) if (i%b == 0 && i%a == 0)//第二次判斷 { printf("最大公約數為%d\n", i); system("pause"); return 0; } else { printf("最大公約數為1\n"); system("pause"); return 0; } } }
求兩個數的最大公約數代碼