2 u014254779 u014254779 于 2014.04.22 19:07 提问

为什么下面两个程序的输出会不一样?求网友帮忙看看

#include
void main()
{
printf("%d",1000*(1-25/100.0)); //output:0
}

#include
void main()
{
int a=1000*(1-25/100.0); //output:750
printf("%d",a);

2个回答

flying13579
flying13579   2014.04.22 21:15

我觉得,第一个程序错了!

u014254779
u014254779 刚才确实写错了,括号不匹配,但是现在改过来还是老问题,两次输出不一样
接近 4 年之前 回复
lduzywang
lduzywang   2014.04.23 09:07

把第一段代码的%d 改成%f试试

u014254779
u014254779 我天真的以为用“%d”输出float会输出他的整数部分~~~~谢谢你
接近 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!