|
|
|
новичок
      
участник
Last Login: 30.05.2001 20:48
Сообщ.: 3,
Visits: 34
|
|
|
|
|
|
Supreme Being
      
модератор
Last Login: 10.11.2008 0:08
Сообщ.: 1 298,
Visits: 12 501
|
|
printf("\t%2d%7.2f",t)
Пойдем по порядку...
\t - табуляция;
- перевод строки;
см. ссылку: http://msdn.microsoft.com/library/devprods/vs6/visualc/vclang/_pluslang_c.2b2b_.character_constants.htm
%2d - означает, что вместо этой комбинации будет подставлено десятичное целое из списка следуемых параметров. (d - single decimal integer, 2 - говорит о том что если целое занимает меньше 2 символов оно будет дополнено пробелами до предустановленного размера)
%7.2f - как ты уже наверно догадываешься, вывод числа с плавающей точкой запятой из списка следуемых параметров (f - float/double);
7 - до скольки дополнять пробелами, .2 - сколько символов после запятой
см. ссылки:
http://msdn.microsoft.com/library/wcedoc/wcecrt/crt2_89.htm
http://msdn.microsoft.com/library/wcedoc/wcecrt/crt2_90.htm
http://msdn.microsoft.com/library/wcedoc/wcecrt/crt2_92.htm
Таким образом, пример:
printf("\t%2d%7.2f", 5, 3.234);
printf("\t%2d%7.2f", 15, 783.4);
должен, по-моему, вывести на экран:
-> 5 3.23
->15 783.40
где -> - символ табуляции.
С уважением, Владимир
P.S. Извини, я не тестировал этот пример - времени нет, и вообще не очень часто использую функцию форматирования, точнее ее изощренные параметры, так что проверь самостоятельно.
|
|
|
|
|
Supreme Being
      
модератор
Last Login: 10.11.2008 0:08
Сообщ.: 1 298,
Visits: 12 501
|
|
Извиняюсь.
Повтор примера (так как я не знал, что текст несколько видоизменяется при отправке на сервер, что само собой разумеется...):
printf("\t%2d%7.2f", 5, 3.234);
printf("\t%2d%7.2f", 15, 783.4);
должен, по-моему, вывести на экран:
->_5___3.23
->15_783.40
где
-> - символ табуляции.
_ - символ пробела.
Но опять таки повторюсь - я не тестировал, поэтому точно не уверен...
С уважением, Владимир
|
|
|
|