我想要两个整数,一个除以另一个以获得小数或百分比。如何获得这两个整数的百分比或小数?(例如,我不确定是否正确。我可能离…):
int correct = 25; int questionNum = 100; float percent = correct/questionNum *100;
这就是我以为自己可以做到的方式,但是它没有用…我想将小数(如果有的话)设为100的百分数,例如,在这种情况下为%25。有任何想法吗?
这是正确的代码(感谢Salvatore Previti!):
float correct = 25; float questionNum = 100; float percent = (correct * 100.0f) / questionNum;
(顺便说一句,我正在使用此项目进行测验程序,这就是为什么我需要百分比或小数的原因)
如果不加.0f,它将被视为整数,整数除法与浮点除法的确有很大不同:)
.0f
float percent = (n * 100.0f) / v;
如果您需要一个整数,则可以将float或double再次强制转换为整数。
float
double
int percent = (int)((n * 100.0f) / v);
如果知道n值小于21474836(即(2 ^ 31/100)),则可以使用整数运算来完成所有操作。
int percent = (n * 100) / v;
如果得到NaN是因为您全力以赴,那么您当然不能除以零……这是没有道理的。