已知int y;float x=-3;,执行语句y=x%2;后,变量y的值为: 语句本身是错误的 为什么?谢谢已知int y;float x=-3;,执行语句y=x%2;后,变量y的值为: 语句本身是错误的为什么?谢谢
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/27 22:22:13
![已知int y;float x=-3;,执行语句y=x%2;后,变量y的值为: 语句本身是错误的 为什么?谢谢已知int y;float x=-3;,执行语句y=x%2;后,变量y的值为: 语句本身是错误的为什么?谢谢](/uploads/image/z/1772593-25-3.jpg?t=%E5%B7%B2%E7%9F%A5int+y%3Bfloat+x%3D-3%3B%2C%E6%89%A7%E8%A1%8C%E8%AF%AD%E5%8F%A5y%3Dx%252%3B%E5%90%8E%2C%E5%8F%98%E9%87%8Fy%E7%9A%84%E5%80%BC%E4%B8%BA%EF%BC%9A+%E8%AF%AD%E5%8F%A5%E6%9C%AC%E8%BA%AB%E6%98%AF%E9%94%99%E8%AF%AF%E7%9A%84+%E4%B8%BA%E4%BB%80%E4%B9%88%3F%E8%B0%A2%E8%B0%A2%E5%B7%B2%E7%9F%A5int+y%3Bfloat+x%3D-3%3B%2C%E6%89%A7%E8%A1%8C%E8%AF%AD%E5%8F%A5y%3Dx%252%3B%E5%90%8E%2C%E5%8F%98%E9%87%8Fy%E7%9A%84%E5%80%BC%E4%B8%BA%EF%BC%9A+%E8%AF%AD%E5%8F%A5%E6%9C%AC%E8%BA%AB%E6%98%AF%E9%94%99%E8%AF%AF%E7%9A%84%E4%B8%BA%E4%BB%80%E4%B9%88%3F%E8%B0%A2%E8%B0%A2)
xSn@wQ)\! 鷤JYMH؈J!03sgƫBx@tQɲURÜfOd++ZMވ(K%QI*|eQUP3j*z1I:B'Ҏ
J@R^`Qr
h;&"P vCn?x9"[nb
ߜ>;,%yzՀՂBޟL0qf#*\5)Ǝ=dkEd5:Ct_L%Ze#x;9-EХu.uMS@,@KQ4dnPjeސ'؇qz
已知int y;float x=-3;,执行语句y=x%2;后,变量y的值为: 语句本身是错误的 为什么?谢谢已知int y;float x=-3;,执行语句y=x%2;后,变量y的值为: 语句本身是错误的为什么?谢谢
已知int y;float x=-3;,执行语句y=x%2;后,变量y的值为: 语句本身是错误的 为什么?谢谢
已知int y;float x=-3;,执行语句y=x%2;后,变量y的值为: 语句本身是错误的
为什么?谢谢
已知int y;float x=-3;,执行语句y=x%2;后,变量y的值为: 语句本身是错误的 为什么?谢谢已知int y;float x=-3;,执行语句y=x%2;后,变量y的值为: 语句本身是错误的为什么?谢谢
很高兴为你解决问题哈~作为一个从事软件开发的人员,你这种问题在我曾经也是犯过错误的哈
在数值类型里面有个 优先级关系:一般来讲,占位越长或者精度越高的数据类型的等级越高,
当你做运算的时候,系统会自动的将 低优先级的数自动向高优先级的数转换,称之为 隐身转换
当高级向低级转换的时候,需要强制转换 就是在结果前面加上 (低优先级的数据类型) 就可以了
所以你上面的程序可以可以这样写:
int y;
float x=-3;
y=(int)x%2; 将float强制转换成 int
或者,
int x=-3;
float y;
y=x%2 此时系统会自动将int结果转换成 float 的哈
有什么不明白的继续追问!