C语言问题(为什么无限循环,而且最后输出的e,t,time都为0)
C语言问题(为什么无限循环,而且最后输出的e,t,time都为0)
日期:2016-01-10 10:23:07 人气:1
先指出几个问题:
for(int t=0;t<=time;t=t+dt)??t是整型,dt是浮点型,当dt<1时t=t+dt是不会增值的,因为一个浮点数赋给一个整型数时只取整数部分。比如t=1,dt=0.3,执行t=t+dt的结果是t永远是1。
printf("%d\n",e);??e是float型,而控制符却是%d,这样输出永远是0。
printf("%d\n",time);??与2一样,time是float型。