It should be 1, (int) has converted the result into plastic surgery, and a = int (7.0/4); The result is 1! The result of a=float(7/4) is 1. No matter what the data type of A is (float or int, the result can also be a char type within 255), the result is plastic after (int) forced type conversion, and only the integer part is taken!