如果两个相除的数都为整型的话,
得数只保留整数部分,
如:6/4=1,8/3=2;
此时就算用类型转换也得不到小数部分,
例如x=2,y=3;
(float)(x/y)的结果只是将2/3的整数部分0变成了浮点型,
只有把x和y都定义成浮点型才能得到小数部分。
如果两个相除的有一不为型的话,
就和代数里面的得数一样,
如:3.2/2=1.6,4.5/3=1.5,6.3/0.9=7.0
源代码:
#include <stdio.h>
int main()
{
int t,z;
float i,x,y;
int money;
scanf("%d",&t);
while(t--)
{
scanf("%f%f%d",&x,&y,&z);
i=(2*x-y)/(x+y);
if(i>=1)
{
printf("%d\n",z);
}
else if(i<=0)
{
printf("0\n");
}
else
{
money=z*i;
printf("%d\n",money);
}
}
return 0;
}