/求两个数的最大公约数。/
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
//输入函数
void input(int *a, int *b){
printf("请输入两个数(a,b):\n"); //提示用户输入数据
scanf("%d,%d", &(*a), &(*b)); //保存用户输入的数据
}
//找公约数函数
void find_common_divisor(int a, int b){
int n = 0; //定义一个变n,用来尝试各种可能公约数
int result = 0; //定义一个变量result保存最后结果
int ret; //定义一个变量ret,赋值为a,b中较小者
if (a > b) { //给ret变量赋值
ret = b;
}
else{
ret = a;
}
while (n < ret){ //当n小于a,b中的较小者
++n; //n+1
if (a % n == 0 && b % n == 0){ //若n能整除a和b
result = n; //result保存所有满足条件的n中最大者
}
}
printf("最大公约数是%d\n", result); //打印输出结果
}
//主函数
int main(){
int a, b; //定义两个变量,用以传递参数
input(&a, &b); //调用输入函数
find_common_divisor(a, b); //调用找公约数函数
system("pause");
return 0;
}