Member 13015247 Ответов: 2

Почему синтаксис%. 2f like не работает


я хочу использовать синтаксис типа%. 2f, который означает, что он должен печатать до двух десятичных знаков, но он не принимает так, а вместо этого он даже не читается как плавающее значение, почему?

Что я уже пробовал:

printf("ans=%.2f\n",a/b)

Richard MacCutchan

Какие бывают типы А и в?

Member 13015247

a и b изначально объявлены как поплавки, и ya эта проблема возникает в cs50ide почему? в кодовом блоке он работает хорошо

Richard MacCutchan

Таким образом, ваша реальная проблема заключается в том, что cs50ide не работает. Жаль, что вы не сказали этого в первую очередь.

2 Ответов

Рейтинг:
16

OriginalGriff

Вероятно, потому, что ваш код использует целочисленные значения для a и b Попробуйте объявить их как float, нет int:

#include <stdio.h>

int main()
{
    float a = 24;
    float b = 7;
    printf("Hello, World!\n");
    printf("ans = %.2f\n", a / b);
    printf("ans = %2.2f\n", a / b);
    return 0;
}


Richard MacCutchan

См. комментарии выше.

OriginalGriff

См. его другой вопрос...: смех:

Member 13015247

по какому вопросу вы говорите?

Richard MacCutchan

Все они.

Member 13015247

если вы можете решить проблему тогда решите ее иначе смейтесь где нибудь еще это не то место чтобы смеяться

Рейтинг:
0

Patrice T

Убедиться a/b это поплавок.
Если a и b являются целыми числами, / приведите к целому числу.