C语言,这里编译没有错误,为什么执行时出错?

2024-11-20 18:32:36
推荐回答(3个)
回答1:

x是整型,在最后一个printf函数中应该用%d,你用的是%lf。如果你要用%lf,程序应该改为:

#include "stdio.h"
void main( )
{int m,n,k;
double x=1;
scanf("%d%d",&m,&n);
for(k=1;k<=m&&k<=n;k++)
if(m%k==0&&n%k==0)x=k;
printf("%lf",x);
}

回答2:

是求最大公约数吧?
printf("%lf",x);中的控制符不正确,应改为%d,即printf("%d",x);

回答3:

emm,我跑了下没问题啊,可以说下程序是做什么的吗,还有输入输出应该是什么啊