c语言求最大公约数为什么结果出不来
毕业设计
1
问题背景
c语言求最大公约数为什么结果出不来
尝试结果
c语言求最大公约数为什么结果出不来
明确问题
int m,n,i;
printf("输入两个正整数m n(m<n)");
scanf("%d%d",&m,&n);
for (i=n-1;i<=(n-1)&&i>0;i--)
{
if(n%i==0&&m%i==0)
printf("最大公约数是%dn",i);
break;
}
int main()
int m,n,i
printf("输入两正整数m (m<n)");
scanf("%d%d",&m,&n),
for (i=n-li<=(n-1)&&i>O;i--
if(n%i==0&&m%i==0)
printf("最大公约数是%dn",i);
break;l
return
Process returned 0(0x0) execution time: 3.035 s
'ress any key to continue.
-
#include<stdio.h> int main() { int m, n, temp, i; printf("输入两正整数m (m<n)"); scanf("%d%d", &m, &n); if(m<n) /*比较大小,使得m中存储大数,n中存储小数*/ { /*交换m和n的值*/ temp=m; m=n; n=temp; } for (i=n; i>0; i--) /*按照从大到小的顺序寻找满足条件的自然数*/ if(m%i==0 && n%i==0) { /*输出满足条件的自然数并结束循环*/ printf("%dn",i); break; } return 0; }
-
if 语句后面添加大括号,否则for循环第一次就break 了,如下: if(n%i==0&&m%i==0){ printf("最大公约数是%d\n",i); break; }
发表回复