编写程序,设计函数intgcd(int a, int b),计算两个正整数的最大公约数。
编写程序,设计函数intgcd(int a, int b),计算两个正整数的最大公约数。
中国大学MOOC:'下面程序是用辗转相除法计算两个正整数的最大公约数的递归求解方法。请将程序补充完整。提示:辗转相除法的基本思路是,对正整数a和b,连续进行求余运算,直到余数为0为止,此时非0的除数就是最大公约数。设r=amodb表示a除以b的余数,若r≠0,则将b作为新的a,r作为新的b,重复amodb运算,直到r=0时为止,此时b为所求的最大公约数。例如,50和15的最大公约数的求解过程可表示为:Gcd(50,15)=Gcd(15,5)=Gcd(5,0)=5。intGcd(inta,intb) { if(a%b==0) returnb; else return____________________; }';
中国大学MOOC:'下面程序是用辗转相除法计算两个正整数的最大公约数的递归求解方法。请将程序补充完整。提示:辗转相除法的基本思路是,对正整数a和b,连续进行求余运算,直到余数为0为止,此时非0的除数就是最大公约数。设r=amodb表示a除以b的余数,若r≠0,则将b作为新的a,r作为新的b,重复amodb运算,直到r=0时为止,此时b为所求的最大公约数。例如,50和15的最大公约数的求解过程可表示为:Gcd(50,15)=Gcd(15,5)=Gcd(5,0)=5。intGcd(inta,intb) { if(a%b==0) returnb; else return____________________; }';
下面程序是用辗转相除法计算两个正整数的最大公约数的递归求解方法。请将程序补充完整。提示:辗转相除法的基本思路是,对正整数a和b,连续进行求余运算,直到余数为0为止,此时非0的除数就是最大公约数。设r=amodb表示a除以b的余数,若r≠0,则将b作为新的a,r作为新的b,重复amodb运算,直到r=0时为止,此时b为所求的最大公约数。例如,50和15的最大公约数的求解过程可表示为:Gcd(50,15)=Gcd(15,5)=Gcd(5,0)=5。intGcd(inta,intb){if(a%b==0)returnb;elsereturn____________________;} A: Gcd(b,a%b) B: Gcd(a,b%a) C: Gcd(b%a,a) D: Gcd(a%b,b)
下面程序是用辗转相除法计算两个正整数的最大公约数的递归求解方法。请将程序补充完整。提示:辗转相除法的基本思路是,对正整数a和b,连续进行求余运算,直到余数为0为止,此时非0的除数就是最大公约数。设r=amodb表示a除以b的余数,若r≠0,则将b作为新的a,r作为新的b,重复amodb运算,直到r=0时为止,此时b为所求的最大公约数。例如,50和15的最大公约数的求解过程可表示为:Gcd(50,15)=Gcd(15,5)=Gcd(5,0)=5。intGcd(inta,intb){if(a%b==0)returnb;elsereturn____________________;} A: Gcd(b,a%b) B: Gcd(a,b%a) C: Gcd(b%a,a) D: Gcd(a%b,b)
中国大学MOOC:根据最大公约数的如下3条性质,采用递归法编写计算最大公约数的函数Gcd(),在主函数中调用该函数计算并输出从键盘任意输入的两正整数的最大公约数。性质1如果a>b,则a和b与a-b和b的最大公约数相同,即Gcd(a,b)=Gcd(a-b,b)性质2如果b>a,则a和b与a和b-a的最大公约数相同,即Gcd(a,b)=Gcd(a,b-a)性质3如果a=b,则a和b的最大公约数与a值和b值相同,即Gcd(a,b)=a=b代码如下,请补充程序中缺少的内容。#includeintGcd(inta,intb);intmain(){inta,b,c;printf(Inputa,b:);scanf(%d,%d,&a,&b);c=Gcd(a,b);if(_________)printf(GreatestCommonDivisorof%dand%dis%d\n,a,b,c);elseprintf(Inputnumbershouldbepositive!\n);return0;}intGcd(inta,intb){if(_______________)return-1;if(a==b)return__________;elseif(a>b)return__________;elsereturn___________;}
中国大学MOOC:根据最大公约数的如下3条性质,采用递归法编写计算最大公约数的函数Gcd(),在主函数中调用该函数计算并输出从键盘任意输入的两正整数的最大公约数。性质1如果a>b,则a和b与a-b和b的最大公约数相同,即Gcd(a,b)=Gcd(a-b,b)性质2如果b>a,则a和b与a和b-a的最大公约数相同,即Gcd(a,b)=Gcd(a,b-a)性质3如果a=b,则a和b的最大公约数与a值和b值相同,即Gcd(a,b)=a=b代码如下,请补充程序中缺少的内容。#includeintGcd(inta,intb);intmain(){inta,b,c;printf(Inputa,b:);scanf(%d,%d,&a,&b);c=Gcd(a,b);if(_________)printf(GreatestCommonDivisorof%dand%dis%d\n,a,b,c);elseprintf(Inputnumbershouldbepositive!\n);return0;}intGcd(inta,intb){if(_______________)return-1;if(a==b)return__________;elseif(a>b)return__________;elsereturn___________;}