【发布时间】:2020-07-06 18:05:31
【问题描述】:
我正在通过获取单词、句子和字母的数量来构建段落难度标注器……我正在尝试除以整数并获得浮点数 for example ((letter_counter / word_counter) * 100); Dividing (80 / 21) * 100 正在返回400 而不是 380.9523,我做错了什么?感谢一些帮助!这是我的代码示例! letter_counter, word_counter, sentence_counter = int
// Putting all together
float L = ((letter_counter / word_counter) * 100);
printf("The L value = %f\n", L);
float S = ((float) sentence_counter / word_counter) * 100;
printf("The S value = %f\n", S);
int index = round(0.0588 * L - 0.296 * S - 15.8);
printf("Grade %i\n", index);
if (index < 1)
{
printf("Before Grade 1\n");
}
else if (index >= 16)
{
printf("Grade 16+\n");
}
else
{
printf("Grade %i\n", index);
}
【问题讨论】:
-
但是为什么在计算
S时将sentence_counter转换为(float)? -
整数除法产生整数结果 - 要获得浮点结果,至少有一个操作数必须是浮点类型。