Я использую Sprintf для формирования строки в C.форматирует строку, используя Sprintf в с
мне нужно вставить «+» и «-» знак перед тем значением с плавающей точкой.
Этот положительный и отрицательный знаки вставляются путем проверки флага после этого, когда я вставляю значение поплавка.
Теперь я хочу сделать это целое число в правильном выравнивании вместе с положительным или отрицательным знаком.
В настоящее время это моя отформатированная строка:
+300.00
-200.00
+34.60
Я хочу, чтобы результат, как следующее,
+300.00
+233.45
-20.34
Я написал следующий код:
char printbuff[1000], flag = 1;
double temp=23.34, temp1= 340.45;
sprintf(printBuff, "%c%-lf\n%c%-lf",
(Flag == 1) ? '+' : '-',
temp,
(Flag == 1) ? '+' :'-',
temp1);
я получаю следующий вывод:
+23.34
+340.45
Вместо желаемого:
+23.45
+340.45
Как я могу это сделать?
[Whathaveyoutried.com] (http://mattgemmell.com/2008/12/08/what-have-you-tried/)? –
Вы отметили два языка: вам нужен C-ответ или C++? – Angew
Я хочу C ответить. –