对浮点数取余的笨方法(C Primer Plus第五章5.11编程练习第4题)
#include<stdio.h>
#include<math.h>
const float FT_IN = 12.0;
const float CM_IN = 0.3937;
{
float cm, inches;
int feet;
printf("Enter a centimeters:");
scanf("%f", &cm);
while (cm>0)
{
feet = (cm * CM_IN) / FT_IN;
inches = (cm * CM_IN) - feet * FT_IN;
printf("%.1f = %d feet,%.1f inches\n", cm, feet, inches);
printf("Enter a centimeters(<=0 to quit):");
scanf("%f",&cm);
}
printf("bye!");
return 0;
}
笨方法:通过除号/对x(假设x为模)取得一个商(大概是吧),原值 - 商*模最后得到的值就是余数了(未测试C99标准的趋零截断的影响)
当然,头文件 math.h里的fmod()可以直接对浮点数取余