作业帮 > 综合 > 作业

C语言,(常量/常量)*变量与(变量/常量)*常量有什么不同吗

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/04/28 14:11:14
C语言,(常量/常量)*变量与(变量/常量)*常量有什么不同吗
z=(angle/MAX)*Pi ;
与 z=(Pi/MAX)*angle ;(其中pi 与MAX都是用define 定义的常量,angle 是用int声明的变量),为什么这两条式子不同结果?
C语言,(常量/常量)*变量与(变量/常量)*常量有什么不同吗
可能MAX也是int型的吧,但是PI是double型的浮点数
整数/整数 结果是整数不是小数.1/360=0
浮点数/整数 结果是浮点数 1.0/360 = 0.0027777777777778
一般情况下应该没有区别的.
不过有的编译器在预处理时会自动帮你把常量/常量的结果先算出来