看似简单的问题,却始终没找到答案。
c语言函数中参数的问题。举个例子,pow(9,0.5)=3
但pow(9,5/10)=1,自定义的函数也一样,只要参数中有除法运算,结果就是错的。
c语言教材中不是说函参可以是表达式吗?
乘法似乎就可以,pow(2,2*2)=16,真是奇怪了。。求高人指教。
----------------解决方案--------------------------------------------------------
pow(9,5/10)=1相当于pow(9,0)=1,现在应该没有什么奇怪的了吧
----------------解决方案--------------------------------------------------------
5/10=0
2*2=4
有问题吗?
----------------解决方案--------------------------------------------------------
5/10为什么是0??我是新手,麻烦详细说下,在线等。。
----------------解决方案--------------------------------------------------------
两个整数相除,结果是整数,取整数部分就是0
----------------解决方案--------------------------------------------------------
明白了,谢谢大家指教。
----------------解决方案--------------------------------------------------------
如果一定要实现表达式的话,可以用(5/10.0)就可以得出0.5了
----------------解决方案--------------------------------------------------------
上面都说出来了,我就不用说了!
----------------解决方案--------------------------------------------------------
呵呵 LZ 精神可佳 我以前也犯这种错误
----------------解决方案--------------------------------------------------------
----------------解决方案--------------------------------------------------------