计算两个正整数的最大公约数。请按以下给定的函数原型编程: int MaxCommonFactor( int a, int b);
返回值:返回的是最大公约数;若输入的数据有任意一个不满足条件,返回值是-1。参数:a,b是两个整型数输入要求:%d,%d输出要求:详见输出样例输入输出样例:InputSa...
返回值:返回的是最大公约数;若输入的数据有任意一个不满足条件,返回值是
-1。
参数:a,b是两个整型数
输入要求: %d,%d
输出要求: 详见输出样例
输入输出样例:
Input Sample1:
2,3
Output Sample1:
1
Input Sample2:
-1,3
Output Sample2:
-1
Input Sample3:
2,0
Output Sample3:
-1
Input Sample4:
-1,-2
Output Sample4:
-1 展开
-1。
参数:a,b是两个整型数
输入要求: %d,%d
输出要求: 详见输出样例
输入输出样例:
Input Sample1:
2,3
Output Sample1:
1
Input Sample2:
-1,3
Output Sample2:
-1
Input Sample3:
2,0
Output Sample3:
-1
Input Sample4:
-1,-2
Output Sample4:
-1 展开
3个回答
展开全部
#include<stdio.h>
int MaxCommonFactor( int a, int b)
{
int temp;
if(a<=0||b<=0) return -1;
while(b!=0)
{
temp=a%b;
a=b;
b=temp;
}
return a;
}
void main()
{
int num1,num2;
scanf("%d,%d",&num1,&num2);
printf("%d\n",MaxCommonFactor( num1, num2));
}
int MaxCommonFactor( int a, int b)
{
int temp;
if(a<=0||b<=0) return -1;
while(b!=0)
{
temp=a%b;
a=b;
b=temp;
}
return a;
}
void main()
{
int num1,num2;
scanf("%d,%d",&num1,&num2);
printf("%d\n",MaxCommonFactor( num1, num2));
}
追问
非常谢谢哈。。。我们老师还要求我们要用int main() 和结尾 return 0;
这个要怎么上去啊?
追答
//主函数改为下面:
int main()
{
int num1,num2;
scanf("%d,%d",&num1,&num2);
printf("%d\n",MaxCommonFactor( num1, num2));
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询