我试图运行一个程序,但它显示了一个错误:
无效二进制运算符浮点到int
当我试着做float时,它说:
无效二进制操作符浮点到浮动
问题在于%算子及其操作数。
请告诉我该怎么做?
#include <stdio.h>
int main()
{
float x,y;
scanf("%f%f",&x,&y);
float z=x%5.0f;
if(x<=y && z==0)
printf("%.2f",y-x-0.50);
else if (x>y || z!=0)
printf("%.2f",y);
return 0;
}发布于 2015-08-23 05:45:28
模%只对整数有意义,因为它被定义为整数除法中的余数。你不能用浮点数做整数除法。
发布于 2015-08-23 05:47:13
模算子不适用于浮子。您可能希望使用fmod函数:
http://www.cplusplus.com/reference/cmath/fmod/
发布于 2015-08-23 06:02:00
请注意,%操作符不适用于float。相反,您需要为您的需求使用fmod()。
double fmod(double numerator, double denominator);https://stackoverflow.com/questions/32163567
复制相似问题