niusouti.com

请编写函数fun,它的功能是:求任意两个正整数的最小公倍数和最大公约数,最小公倍数放在指针变量bei所指的变量中,最大公约数放在指针变量yue所指的变量中。注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。vOid fun(int m,int n,int*bei,int*yue){int s=l,i;if(m>n){s=m;m=n;n=S;}for(i=2,s=1;i<m i++)if((m%i=0)&&(n%i=0)){}

题目

请编写函数fun,它的功能是:求任意两个正整数的最小公倍数和最大公约数,最小公倍数放在指针变量bei所指的变量中,最大公约数放在指针变量yue所指的变量中。

注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

vOid fun(int m,int n,int*bei,int*yue)

{int s=l,i;

if(m>n){s=m;m=n;n=S;}

for(i=2,s=1;i<m i++)

if((m%i=0)&&(n%i=0))

{

}

*yue=s;

*bei=S*m*n;

}

main( )

{int a,b,beishu,yueshu;

chscr( );

printf("please input a,b:");scanf("%d,%d,"&a,&b);

fun(a,b,&beishu,&yueshu);

printf("a,b beishu:%d\n",beishu);

printf("a,b yueshu:%d\n",Yueshu);

}


相似考题
参考答案和解析
正确答案:void fun(int mint nint*beiint*yue) {int s=li; if(m>n){s=m;m=n;n=s;} for(i=2s=1;im;i++) if((m%i==0)&&(n%i==0)) {m=m/i; n=n/i; S=s*i: i=1: } *yue=s;*bei=s*m*n; }
void fun(int m,int n,int*bei,int*yue) {int s=l,i; if(m>n){s=m;m=n;n=s;} for(i=2,s=1;im;i++) if((m%i==0)&&(n%i==0)) {m=m/i; n=n/i; S=s*i: i=1: } *yue=s;*bei=s*m*n; } 解析:本题考查编程解决一般数学问题的能力。本题函数fun的实现了拐除法,在2~ m之间从小到大依次取数i同时整除m和n,若能整除,则累乘到s中,最后的s就是最大公约数,s*m*n就是最小公倍数。
更多“请编写函数fun,它的功能是:求任意两个正整数的最小公倍数和最大公约数,最小公倍数放在指针变量be ”相关问题
  • 第1题:

    编程实现:输出两个整型输的最大公约数和最小公倍数。


    ex2-9.cpp

  • 第2题:

    请编写Python程序完成以下要求: 定义函数用于求两个整数的最大公约数和最小公倍数,并编写主程序,提示用户从键盘上输入两个正整数,通过调用你定义的函数完成计算,并返回结果。 (得分点提示:程序的可读性、功能是否正确、输入输出是否有提示信息)


    自己验证程序的正确性

  • 第3题:

    编写两个函数,分别求两个整数的最大公约数和最小公倍数。


    #include &ltiostream&gtusing namespace stdint Max1 ( int a, int b) { if (a &gt b) return a else return b}double Max1 ( double a, double b) { if (a &gt b) return a else return b}int Max1 ( int a, int b, int c) { if (a &gt= b &amp&amp a &gt= c) return a else if (b &gt= a &amp&amp b &gt= c) return b else return c }int main() { int a, b ,c double da, db cout&lt&lt“请输入三个整数:” cin&gt&gta&gt&gtb&gt&gtc cout&lt&lt“两个整数最大值为:”&lt&ltMax1(a, b)&lt&ltendl cout&lt&lt“三个整数最大值为:”&lt&ltMax1(a, b, c)&lt&ltendl cout&lt&lt“请输入两个浮点数:” cin&gt&gtda&gt&gtdb cout &lt&lt“两个浮点数最大值为:”&lt&lt Max1(da,db)&lt&ltendl return 0}

  • 第4题:

    函数习题(3):函数实现求最大公约数和最小公倍数


    gcd

  • 第5题:

    设计算法并实现:求两个正整数的最大公约数和最小公倍数。


    gcd(a,b)