完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
#include
#include int main() { int n=5; int tmp1=0; int tmp2=0; int tmp3=0; int a=0; int i =0; for(i=0;i tmp2=tmp2+tmp1; tmp3=tmp3+tmp2; } printf("%d",tmp3); } 前面两次循环值都是正确的,第三次开始就出错了。10的2次方应该是100,但是他计算出来是99。 如果都用double类型算出来的值就是正确的。 这个是什么原因,求教大神。 |
|
相关推荐
2个回答
|
|
表示不相信啊。。。
|
|
|
|
pow() 函数的参数和返回值是float或者double类型的,所以应为double temp1 = 0,temp1 = pow(10.0,i)
|
|
|
|
只有小组成员才能发言,加入小组>>
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-3-28 18:36 , Processed in 0.403328 second(s), Total 44, Slave 38 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 深圳华秋电子有限公司
电子发烧友 (电路图) 粤公网安备 44030402000349 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号