以下函数fun用于求两个整数a和b的最大公约数。 fun(a B) int a b; {int i
以下函数fun用于求两个整数a和b的最大公约数。 fun(a,B) int a,b; {int i,j,m,n; if(a>B) {m=a;a=b; 【 】 ;} i=a;j=b; while((n= 【 】 )!=0) {j=i;i= 【 】 ;} return(i); }
请帮忙给出正确答案和分析,谢谢!
参考解答
正确答案:b=mj%i.n
函数中的变量i和j分别存放两个形参的最小数和最大数,在语句i=a和j=b执行之前,要将a和b分别变为最小数和最大数,当a>b时,程序使用中间变量将两者交换,所以题中第—个空中应当填写“b=m”;为求两个整数的最大公约数,程序的where循环条件必须为j整除i成立,所以题中第二个空中应当填写“j%i”;程序要通过i的值返回最大公约数,因此在循环中要将每次整除的公钓数赋给i,以保证最后返回的是两个,整数的最大公约数,所以第三个空中应当填写“n”。
相似问题
若有定义int m=5 y=2 则执行表达式y+=y-=m*=y后 y的值为【 】。请帮忙给出正确答
若有定义int m=5,y=2,则执行表达式y+=y-=m*=y后,y的值为【 】。请帮忙给出正确答案和分析,谢谢!
下列程序的输出结果是16.00 请填空: main() } int a=9 b=2; float x
下列程序的输出结果是16 00,请填空: main() } int a=9,b=2; float x=【 】,y=1 1,z; z=a 2+b*x/y+1 2; printf( "%5 2f n ",z); }请帮忙给出正确答案和分析,谢谢!
在欧洲债券市场上 发行费用是以向承销辛迪加提供债券价格的百分比来表示的。( )
在欧洲债券市场上,发行费用是以向承销辛迪加提供债券价格的百分比来表示的。( )
以下函数用于求出一个2×4矩阵中的最大元素值。 max_value(arr) int arr[][4
以下函数用于求出一个2×4矩阵中的最大元素值。 max_value(arr) int arr[][4]; { int i,j,max; max=arr[O][0]; for(i=0;i<2;i++) for(j=0;
外汇期权产生的两个重要因素是()A. 国际金融全球化B. 金融市场国际化C. 国际贸易迅速发展D.
外汇期权产生的两个重要因素是()A 国际金融全球化B 金融市场国际化C 国际贸易迅速发展D 金融市场风险加剧E 金融市场日益增长的汇率波动
