为什么在C语言中,这个printf的输出是错误的?

2024年10月30日 15:13
有2个网友回答
网友(1):

你这并不是强制类型转换,printf是个变参函数,而且比较“笨”,它只能识别你给他设定好的输出类型,因为你设定为%d,所以只能输出出错,5/2是结果是整数,而5.0/2是浮点数运算,结果为浮点数,所以类型不匹配。 谢谢,望采纳

网友(2):

你这样做5.0/2.0和之后的i=...都没有进行强转
强转得通过变量进行
int i = 5.0/2.0 ;
printf("%d", i );
答案是2