3392 - 习题7-1.1 求最大公约数
时间限制 : 1 秒
内存限制 : 12 MB
写一个函数,求两个整数的最大公约数。通过主函数调用这个函数,并输出结果。
两个整数通过键盘输入。
题目输入
空格分隔的2个整数
题目输出
输入两数的最大公约数,单独占一行。
输入/输出样例
输入格式
8 12
输出格式
4
C语言解答
#include <stdio.h> #include <string.h> void fun(int num1,int num2) { int temp; if(num1<num2) { temp=num1; num1=num2; num2=temp; } while(num2!=0) { temp=num1%num2; num1=num2; num2=temp; } printf("%d\n",num1); } int main(void) { int num1,num2; scanf("%d %d",&num1,&num2); fun(num1,num2); return 0; }
C++解答
#include<stdio.h> int main() { int dgy(int,int); int l,x,z; scanf("%d%d",&l,&x); z=dgy(l,x); printf("%d\n",z); return 0; } int dgy(int l,int x) {int q,w; if(x>l) {q=l;l=x;x=q;} while((w=l%x)!=0) { l=x; x=w; } return(x); }