- 积分
- 0
- 注册时间
- 2005-10-12
- 仿真币
-
- 最后登录
- 1970-1-1
|
我有一个问题就是我的程序在运行过程中间会出现这样的结果
t=0.007100,uc=194.177032,i=135.209427,cl=2.679229,l=0.006869,fx=2855.755127,ff=150.791443
t=0.007150,uc=193.839020,i=135.408279,cl=2.684501,l=0.006866,fx=2852.111572,ff=151.362503
t=0.007200,uc=1.#INF00,i=-1.#INF00,cl=1.#INF00,l=0.006868,fx=2849.603516,ff=151.942413
t=0.007250,uc=1.#QNAN0,i=1.#QNAN0,cl=1.#QNAN0,l=0.006868,fx=2849.603516,ff=152.531235
t=0.007300,uc=1.#QNAN0,i=1.#QNAN0,cl=1.#QNAN0,l=0.006868,fx=2849.603516,ff=153.129059
再往后就全是这种结果了,为什么会这样啊?大家可以看出来在出现乱码之后的FX和L的值就不发生变化了,这会不会是由于运算过程中的时间段取的过小,再加上数值结果的小数的位数少导致的啊?
另外,printf默认的输出小数位数是6位,如果我把数据的小数位数增加到9位的话,那么输出的结果的另外3位会不会是计算机的随机给的数呢,如果是随机给的数,那么后面的计算结果还可信吗?
希望各位大侠能帮帮小弟,谢谢了! |
|