Formatting with printf in C

By: Siva Viewed: 154395 times  Printer Friendly Format    


We could right justify our output using the format specifiers. The field-width specifier tells printf( ) how many columns on screen should be used while printing a value(as in %wd),here the value is right justified and is padded with blanks on the left. If we include the minus sign in format specifier (as in %-wd), this means left justification is desired and the value will be padded with blanks on the right. 

Eg:- main()

{

int a,b;
a=2134;
b=2756;
printf(“%5d /n”,a);
printf(“%-5d /n”,b);

}

The output for “a” would be as

        2     1     3    4 

-  -  -  -  - 

The output for “b” would be as

2 7 5 6

-  -  -  -  - 
 
For float data type the format is % t.nf where ‘t’ denotes the total width and ‘n’ the number of decimal spaces. For example 

main()

{

float x,y;
x= 3.141592;
y=14.4;
printf(“%6.3f \n”,x);
printf(“%-5.2f \n”,y);

} 
 

The output for ‘x’ would be as

  3 . 1 4 2

- - - - - - 

The output for ‘y’ would be as

1 4 . 4 0

- - - - -

Similarly, for formatting a string %ds is used. For example, %10s ,%25s etc. The string could also be formatted using a decimal value, as in %5.3s. Here it specifies how many characters are to be printed. 

Example:

main()

{

char text1[ ] = “Hello”;

char text2[ ] =  “World”;

printf(“% 10s \n,text1);

printf(“%5.3s \n,text2);

printf(“%-5.3s,text2);

} 

The output for text1 would be as

          H e l l o

- - - - - - - - - -  

The output for text2 would be as

    w o r

- - - - - 

The output for text2 would be as

w o r

- - - - - 
 

Special Control Characters

Control characters are invisible on the screen. They have special purposes usually to do with cursor movement. They are written into an ordinary string by typing a backslash character \ followed by some other character. These characters are listed below.

\b
backspace BS
\f
form feed FF
\n
new line NL
\t
horizontal tab HT
\r carriage return CR (cursor to start of line)
\v
vertical tab
\”
double quote
\’
single quote character 
\\
backslash character 


Most Viewed Articles (in C )

Latest Articles (in C)

Comment on this tutorial