Лишние нули при выводе целых чисел - C (СИ)
Формулировка задачи:
Как решить проблему я к сожалению не нашел в интернете.
Суть в том, что в консоль при выводе float целое число, например 5, выводиться как 5,0000000
И числа такие как 5,25 выводятся 5,2500000
Как это решить?
Код у меня такой:
float a,b,c,x; int x1,x2,dx,i; float func(float aa, float bb, float cc, int xx) { if (((aa*xx)==0)||(xx==0)||((cc-4)==0)) { return -6000; } else { if ( ((xx+5<0) && (cc==0) ) || ( (xx+5>0) && (cc!=0)) ) { if ((xx+5<0)&&(cc==0)) return ((1/aa*xx)-bb); if ((xx+5>0)&&(cc!=0)) return ((xx-aa)/xx); } else { return ((10*xx)/(cc-4)); } } } void main() { for (int i=x1;i<=x2;i=i+dx) { x=func(a,b,c,i); if (x==-6000) printf("F(%i) = error\n", i); else printf("F(%i) = %f\n", i, x); } }
Решение задачи: «Лишние нули при выводе целых чисел»
textual
Листинг программы
printf("F(%i) = %g\n", i, x);
Объяснение кода листинга программы
Код представлен одним предложением и выполняет следующие действия:
- Выводит значение переменной
i
в форматеF(%i) = %.2g\n
. F
- это спецификатор формата для функции printf, который указывает как следует форматировать вывод.i
- это переменная, значение которой будет выводиться на экран.x
- это переменная, значение которой будет выводиться на экран.%.2g
- это спецификатор формата, который указывает на то, что число должно быть выведено в научной нотации с двумя знаками после запятой.\n
- это символ новой строки, который указывает на то, что вывод должен быть перенесен на новую строку.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д