C语言最大公约数

计算两个正整数的最大公约数。请按以下给定的函数原型编程:
int MaxCommonFactor(int a, int b);
返回值:返回的是最大公约数;若输入的数据有任意一个不满足条件,返回值是-1。
程序的运行示例1如下:
45,155 (输入,用,隔开)
5 (输出)
程序的运行示例2如下:
-9,20
-1
输入数据格式:"%d,%d"
输出数据格式:"%d"

#include<stdio.h>
int MaxCommonFactor(int a, int  b);
int main(void) {
	int a, b;
	scanf("%d,%d", &a, &b);
	if(a>0&&b>0)
		printf("%d",MaxCommonFactor(a,b));
	else
		printf("%d",-1);
	return 0;
}
int  MaxCommonFactor(int a, int  b) {
	int i;
	while (b != 0) {
		i = a % b;
		a = b;
		b = i;
	}
	return a;
}
posted @ 2021-03-28 19:40  油菜园12号  阅读(374)  评论(0编辑  收藏  举报