void main( )
{
int no = 123;
while(no)
{
no /= 10;
printf("%d", no % 10);
}
}
结果:
当我所有的输入都是整数时,为什么使用float而不是int会给我带来不同的结果?
答案 0 :(得分:0)
如果将int no
更改为float no
,还必须将printf
格式更改为%f
,否则行为将不确定。此外,没有为%
自变量定义float
运算符,那么您实际上尝试了什么代码来进行观察?
输出不同的原因是执行不同的计算:整数和浮点数的除法行为不同,除(当分子是分母的倍数时)。