C 在十进制分隔符后面获取数字

C 在十进制分隔符后面获取数字,c,if-statement,decimal,C,If Statement,Decimal,我试图把数字放在小数点后,并在另一个语句中使用它们 例如: int input1; float x; if (input1 >= 500) { x = input1 / 500 } 如果input1==1700,那么x将是3.4。现在我只需要在下一个语句中使用.4。有办法吗 x = (input1 % 500) * 1.0f / 500 input1%500只取数字的剩余部分,跳过商部分。与1.0f相乘将把数字转换成浮点数,再与500进一步除法(或者更好的500.0f)将为您提

我试图把数字放在小数点后,并在另一个语句中使用它们

例如:

int input1;
float x;
if (input1 >= 500)
{
    x = input1 / 500
}
如果
input1==1700
,那么
x
将是
3.4
。现在我只需要在下一个语句中使用.4。有办法吗

x = (input1 % 500) * 1.0f / 500

input1%500
只取数字的剩余部分,跳过商部分。与
1.0f
相乘将把数字转换成浮点数,再与
500
进一步除法(或者更好的
500.0f
)将为您提供浮点数。

@Lundin此问题与标记为重复的问题如何相同?首先使用
x=input1%500
查找余数,然后将结果除以500作为
x=x/500
。这就可以了。这不是同一个问题……当
input1==-1700
时,你想要什么结果?