c - 如何在C中除以整数并获得浮点数
问题描述
我正在通过获取单词、句子和字母的数量来构建段落难度标记器......我正在尝试除以整数并获得浮点for example ((letter_counter / word_counter) * 100);
除法 (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);
}
解决方案
您必须将其中一个int
s 转换为 a float
。例如:
float L = (((float)letter_counter / word_counter) * 100);
推荐阅读
- html - VBA html选项选择和输入
- r - 密度错误。默认(x = neg):找不到对象'neg'
- flutter - Flare Flutter 动画
- php - 无法使用 PDO/PHP 获取最后插入 UUID
- c - 无法使用 OpenAL 捕获 send() 失败
- oracle - PL SQL 记录操作
- r - 重新排序因子不适用于分组数据
- api - 如何与 Ionic 中提供的 API 进行匹配和验证?
- postgresql - 来自 Windows Anaconda 的 Postgresql 的 pg_hba.conf
- javascript - 使用 JS 按钮从嵌入在 html 站点中的 php 数组中取消设置单个项目