我写了一个输入三个数,按从大到小输出,程序如下。但执行时输入1,2,3能够正常输出3 2 1。但是如果输入较大数或者有负数就不正常了!请高手赐教!我用的环境是vc++6.0
#include <stdio.h>
void main()
{
int a,b,c,t;
scanf(“%d%d%d”,&a,&b,&c);
if(a<b)
{
t=a;
a=b;
b=a;
}
if(a<c)
{t=a;
a=c;
c=t;
}
if(b<c)
{t=b;
b=c;
c=t;
}
printf(“%d,%d,%d.a.b.c);
}
>> 本文固定链接: http://www.vcgood.com/archives/2627
你的 scanf为什么没有‘&’符号。是这个原因吧
不是拉!我漏了
顶,高手指教一下吧
不知道是你打这段代码时马虎还是本来就写错了 在第一个if语句里 最后一段应该是b=t而不是b=a. 还有最后printf()函数写法不规范. 改过这两处错误后我运行所的结果都是正确的,不过我用的是TC. 按理说负数都应该没问题,数的大小的话确实有一定限制,不能太大,去查查你的编译器的限制是多少。
谢谢,我调试了成功谢谢你了!我刚开始学原谅我的马虎!我在家没问题到单位再试试!
恩 我也是个初学者 还要多交流啊