Я хочу получить результат деления двух целых чисел. Например, целые числа 6 и 25. Если я делю целые числа, я получаю 6/25 = 0
в качестве ответа. Я хочу, чтобы результат был 6/25 = 0.24
. Как мне это сделать?Цитата из целых чисел в C
ответ
Это так просто, как
#include <stdio.h>
int main(int argc, char** argv)
{
printf("%.2f\n",(float)6/25);
}
Оператор '. /' ", Как в' 6./25', также будет выполнять эту работу. :-) Не нужно кастинга. – alk
Сначала преобразуйте значения в с плавающей запятой. Например
result = (double)a/(double)b.
Cast любой из них к поплавку
float result = a/(float)b;
Спасибо, это сработало! : D –
Если это ответит на ваш вопрос, вы должны отметить его как принятый ответ, поэтому, если кто-то приходит с той же проблемой, может легко найти решение –
Я предлагаю предпочитаю 'double' over' float'. Если вы делите большое целое на маленькое (например, 1), есть хорошая вероятность, что 'float' даст неточный результат. –
Вы можете умножить числитель на 1.0
, если вы хотите, чтобы избежать отливку.
printf("%f\n", a * 1.0/b);
Какой формат вы хотите результат? – harold
Не используйте __float__, вместо этого используйте __double__, который является таким же, как float, но может содержать более крупные и более точные значения. Необходимое пространство не является проблемой для современных компьютеров. – Marichyasana