main() { int x=3,y=5; float z; z=x/y+y%x; printf("z=%f",z); }
类型错了。在输出时,因该为%f
如果按照你写的
将会是int型的,会得到0.
float z; z=x/y+y%x; 这个表达式算出z=2.6 因为输出z为整型,所以z=2
本来z最后为2.0,但输出却是z=0。因为%d是十进制整型,与z的float型不匹配。
结果为2,由于x,y为整形,所以x/y==0,y%x的余数为2最后结果就为2