当前位置: 代码迷 >> C语言 >> 输出问题!
  详细解决方案

输出问题!

热度:272   发布时间:2007-05-15 11:13:57.0
输出问题!

#include"stdio.h"
void main()
{
int a,b,c,d,temp;
scanf("%d%d",&a,&b);
if(a<b)
{
temp=a;
a=b;
b=temp;
}
c=a*b;
while(b!=0)
{ d=a%b;
a=b;
b=d;
}
printf("%d\n",a);
printf("%d\n",c/b);
getch();
} 大家帮忙看看,怎么输入数字后就自动跳出了,我用WINTC。我照着答案做的,就是不对???
搜索更多相关的解决方案: 输出  

----------------解决方案--------------------------------------------------------
printf("%d\n",c/b); 这个地方的B一定为0
----------------解决方案--------------------------------------------------------
回复:(ml342418175)输出问题!

我猜测:开始输入的两个整形数a和b,其中较小的一个应该是0,导致while循环的条件不满足,没有进入,getchar()没有起作用,所以就直接退出了。
楼主输入的两个值中较小的数是不是0?


----------------解决方案--------------------------------------------------------
回复:(ml342418175)输出问题!...
刚才我看错了,括号的顺序没看清楚。
这个问题的原因应该是楼主输入两个数字后不是按回车键而是敲了空格,getchar()函数把空格当作有效输入,所以程序运行结束后直接退出了。

----------------解决方案--------------------------------------------------------
不是的,我现在已经解决了,不过谢谢大家了,2楼说的对,B一定是0
----------------解决方案--------------------------------------------------------

----------------解决方案--------------------------------------------------------
同意2楼的朋友
----------------解决方案--------------------------------------------------------
  相关解决方案