Лишние нули при выводе целых чисел - 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
- это символ новой строки, который указывает на то, что вывод должен быть перенесен на новую строку.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д