为什么代码
double slope = (double)changeY/changeZ
将斜率设置为 0.0,在我拥有的程序中,changeX = 20 和 changeY = 10(两个整数)?
听起来您使用了错误的变量。尝试这个:
int changeX = 20;
int changeY = 10;
double slope = (double)changeY/changeX;
强制转换运算符 () 的优先级高于 /。该表达式将被评估为:
changeY
到double
.changeX
为double
. 如果一个操作数是double
,那么另一个操作数也与 a 平衡double
(这正式称为“通常的算术转换”)。