永发信息网

c语言百鸡问题

答案:1  悬赏:20  手机版
解决时间 2021-11-19 04:15
  • 提问者网友:雨不眠的下
  • 2021-11-18 14:14
c语言百鸡问题
最佳答案
  • 五星知识达人网友:山河有幸埋战骨
  • 2021-11-18 15:21
因为z是整数,如果两个整数执行/运算,得到的是商,舍去了余数,也就是在不能整除的情况下,得不到小数部分。
z/3.0的意思,就是用浮点型的常量3.0,来要求z按照浮点型来运算,这样得到的结果就是带小数浮点型了。追问那这个z/3.0的结果是一个小数,我后面%d取整,跟直接z/3得到整数也没区别啊?为什么运行结果不一样??追答你后面printf并没有用%d输出z/3.0的值,只有z的值,z是整数,当然用%d输出。
至于上面5*x+3×y+z/3.0,举个例子,如果5*x+3*y是99,z/3.0是1.5,那么z/3就是1,5*x+3*y+z/3就等于100,满足if判断条件,就会输出错误组合,但实际5*x+3*y+z/3.0的实际值确是100.5,不满足if判断条件,就不会输出错误组合。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯