📄 输入两数求最大公约数 最小公倍数 负数错误 未抄.cpp
字号:
#include<stdio.h> /**/
void main()
{
while(1)
{
printf("\n\t输入两个自然数(任意一数为0时结束)求最大公约数,最小公倍数\n\n");
int m,n,temp;
printf(" Input number1: "); scanf("%d",&m);
if(m==0){break;} //输入任意一数为0时结束
printf(" Input number2: "); scanf("%d",&n); //除数不能为0
//用一组数100 40,40 100,100 0,0 100,-100 0,-100 40,40 -100,-100 -40测试错误
if(n==0){break;} //输入任意一数为0时结束
if(m<n){temp=m;m=n;n=temp;} //确保m>n
for(int i=n;i>=1;i--)
{
if(m%i==0&&n%i==0){break;}
}
printf(" 最大公约数为%d\n",i);
for(int j=m;j<=m*n;j++)
{
if(j%m==0&&j%n==0){break;}
}
printf(" 最大公倍数为%d\n",j);
printf("\n 欲继续显示吗?是则回车,否则输入‘空格’回车 ");
getchar();
if(getchar()==' '){break;}
else {while(getchar()!='\n'){;}}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -