int a=1,b=3,c=3;float d=4;能正确表示a/[(b+c)d]的是
是一道练习题,原题是这样的:已有定义语句int a=1,b=3,c=3;float d=4;以下能正确表示数学式子a/[(b+c)d]的C语言表达式是:a/(b+c)*da/(b+c)*1/da/(b+c)/da/d/(b+c)有一答案说题目中“以下能正确表示数学式子”印错了,应该是“以下不能正确表示数学式子”,答案是第一个... 展开
其他答案
只有最后一个能获得想要的结果,其他都为0。原因是同优先级的运算时从左到右,两个整数相除结果仍是整数,而不会自动转换成浮点数,所以a/(b+c)*d=a/6*d=1/6*d=0*d=0*4.0f=0.0f;a/d/(b+c)=a/d/6=(1/4.0f)/6=0.25f/6=0.041666667f另外类似问题你自己写程序试一下就知道了
2011-01-25 09:41
来自北京市
评论(0)赞(1)点赞赞(1)
免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。