已知x=43,ch='A',y=0则表达式x>=y && ch<'B' && !y 的值是

来源:百度知道 编辑:UC知道 时间:2024/06/18 10:11:08
还有一题:
编程输入两个正整数m和n,用“碾转相除法”求其最大公约数。(碾转相除法的基本思想是计算m和n相除的余数,如果余数为0则结束,此时的被除数就是最大公约数。否则,将除数作为新的被除数,余数作为新的除数,继续计算m和n相除的余数,判断是否为0。)
在线等 急
要用c语言写的

//c code
#include <stdio.h>
int main()
{
int p,r,n,m,temp;
printf("please enter two positive integer numbers n,m:");
scanf("%d%d",&n,&m);
if(n<m) //大数放在n中,小数放在m中;
{
temp=n;
n=m;
m=temp;
}
p=n*m; //先将n和m的乘积保存在P中,以便求最小公倍数用
while(m!=0)
{
r=n%m; //求n和m的最大公约数
n=m;
m=r;
}
printf("最小公倍数为:%d\n",n);
printf("最大公约数为:%d\n",p/n);
return 0;
}

第一个表达式的值为1
第二个程序在下面;
#include<stdio.h>
int fun(int m,int n)
{int h;
h=m%n;
if(h==0)
return n;
else
fun(n,h);
}
main()
{
int y,m,n;
scanf("%d",&m);
scanf("%d",&n);
y=m>n?fun(m,n):fun(n,m);
printf("y=%d",y);}

给你写了一个函数
int gcd(int m, int n)
{
if(m==n)
return m;
else
return gcd(n,m%n);
}

<