读书人

请教一个奇怪的有关问题…

发布时间: 2012-03-15 11:50:38 作者: rapoo

请问一个奇怪的问题……
#include <stdio.h>
void main()
{
float a,b,re1,re2,re3,re4=0;
int re5;
printf( "请输入两个数: ");
scanf( "%d%d ",&a,&b);
re1=a+b;
re2=a-b;
re3=a*b;
re4=a/b;
re5=a%b;
printf( "两者和为:%5.2f ",re1);
printf( "两者差为:%5.2f ",re2);
printf( "两者积为:%5.2f ",re3);
printf( "两者商为:%5.2f ",re4);
printf( "两者取余为:%5.2f ",re5);
}

这个程序,题目要求实现的是输入两个数字,然后输出其四则运算的结果,包括加减乘除和取余。但是程序BUILD和COMPILE两个步骤都没问题,运行的也很好,只是出了一个奇怪的事情。
我输入两个数字以后,从re1到re3都输出结果为0,只有re4能正常输出结果。一旦把re4的除法换成其他运算以后,这个也不输出正常结果了……
而且,为什么我取余的时候无法正常输出?总是提示错误C2296,C2297。好奇怪。我类型没错吧?

[解决办法]
error 1:
scanf( "%d%d ",&a,&b)
这样输入a,b不能得到正确的值
error 2:
%只能用于int
这些都会造成程序无法预计的后果

读书人网 >C语言

热点推荐