关于gcd的函数和过程两种不同写法

来源:互联网 发布:塞上牛羊空许约 知乎 编辑:程序博客网 时间:2024/06/10 16:01

没什么特别的,只是想记录一下不同的写法

函数(有返回值)

#include<cstdio>using namespace std;int gcd(int x,int y){if(x%y==0) return y;else return (gcd(y,x%y));} int main(){int a,b;scanf("%d%d",&a,&b);printf("%d",gcd(a,b));return 0;}

过程(无返回值)

#include<cstdio>using namespace std;int ans;void gcd(int x,int y){int r;if(x%y==0) ans=y;else {   r=x%y;   gcd(y,r);}}int main(){int a,b;scanf("%d%d",&a,&b);gcd(a,b);printf("%d",ans);return 0;}


原创粉丝点击