y=(x%2)/10为什么不是合法的赋值语句

人们说把10改写成10.0就对了。为什么

是否合法,和编程语言相关的,下次提问记得标明语言或者选择正确问题分类。
一般来说,y应该是浮点数(小数)类型,那么整数运算就应该是不合法或者取值无效。
(x%2)取余数运算,只能得到0或者1,进行整数运算的时候,即使编译器允许,结果也必然是0,因为两个整数运算默认是去掉余数(或者说小数部分)。
当10改写成10.0后,编译器会认为这是一个浮点数,那么就会使用浮点运算(而不是整除运算),这样1/10.0结果为0.1,而整除结果是0,对部分编译器来说,如果y是浮点数类型,那么可能会报错或者警告。
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-12-21
楼上说那么多没用的废话,错的原因就一个,%只能用于整数,X必须是Int型,和后面的10有什么关系。而且把10改成10.0也不对
相似回答