实型数据的使用和计算

为什么printf(“%f\n”,3/2);算不出来,而
3.0/2就可以

%f属于浮点数,就是小数,而3是整形,所以出现不匹配错误.3.0是浮点数,符合

%f是浮点数,int类型用%d

在c语言中,/表示整除,只会得到整数。根据你的想法,你想用%f输出小数结果,但是3/2为整数所以结果错误。
而3.0/2的结果则为小数符合%f所以结果正确。
这里你也可以使用(float) 3/2将3/2的结果强制转化为小数

供参考:http://www.viiis.cn/news/show_126960.html