Модификаторы минимальной ширины поля

Целое число, расположенное между знаком % и кодом формата, играет роль модификатора минимальной ширины поля. Если указан модификатор минимальной ширины поля, то чтобы ширина поля вывода была не меньше указанной минимальной длины, при необходимости вывод будет дополнен пробелами. Если же выводятся строки или числа, которые длиннее указанного минимума, то они все равно будут отображаться полностью. По умолчанию для дополнения используются пробелы. А если для этого надо использовать нули, то перед модификатором ширины поля следует поместить 0. Например, %05d означает, что любое число, количество цифр которого меньше пяти, будет дополнено таким количеством нулей, чтобы число состояло из пяти цифр. В следующей программе показано, как применяется модификатор минимальной ширины поля:

#include <stdio.h>

int main(void)

{

double item;

item = 10.12304;

printf("%f\n", item);

printf("%10f\n", item);

printf("%012f\n", item);

return 0;

}

Вот что выводится при выполнении этой программы:

10.123040

10.123040

00010.123040

Модификатор минимальной ширины поля чаще всего используется при создании таблиц, в которых столбцы должны быть выровнены по вертикали. Например, следующая программа выводит таблицу квадратов и кубов чисел от 1 до 19:

#include <stdio.h>

int main(void)

{

int i;

/* вывод таблицы квадратов и кубов */

for(i=1; i<20; i++)

printf("%8d %8d %8d\n", i, i*i, i*i*i);

return 0;

}

А вот пример полученного с ее помошью вывода:

1 1 1

2 4 8

3 9 27

4 16 64

5 25 125

6 36 216

7 49 343

8 64 512

9 81 729

10 100 1000

11 121 1331

12 144 1728

13 169 2197

14 196 2744

15 225 3375

16 256 4096

17 289 4913

18 324 5832

19 361 6859


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: