Printing
printf Function
As you’ve seen, the printf function is used to display output in C. For example, to display a string of text:
printf("Hello\n");Note that you always need to specify the newline character (\n). There is no println equivalent in C.
Printing Variables
Printing variables works a bit differently. First, you specify the kind of variable that’s going to be printed (called a control string). Then, outside the string, you give the corresponding variable name.
Here are the different control strings:
| Type | Control String | 
|---|---|
| int | %d | 
| double | %lf | 
| float | %f | 
| char | %c | 
| char* (string) | %s (see String section) | 
It’s easiest to see an example to figure out how printing works. Here’s how to print the value of an integer to the screen:
int num = 4;
printf("The value of num is %d\n", num);
Notice that where we want to print a variable, we put the control string
(%d for int). After we’ve listed the entire string, we put the corresponding variable names as the next arguments to printf. The above example will print:
"The value of num is 4" 
to the screen.
We can also print several variables at once:
char letter = 'A';
int val = (int) letter;
printf("The ASCII value of %c is %d\n", letter, val);This prints:
"The ASCII value of A is 65"
to the screen. Notice that the %c corresponds to the letter argument, and the %d corresponds to the val argument.
Formatting
The printf function also allows you some control over formatting your output. For example, if you want a value to take up exactly 6 spaces (padded with space characters on the left, if necessary), put a 6 between the % and the control string character.
For example:
int num = 4;
printf("The value of num is %6d\n", num);This will print:
"The value of num is 4" 
to the screen (note the padding on the left of the 4).
You can also only display a certain number of digits for decimal numbers. For example, put a .2 in between the % and the control string character to only display two decimal places.
For example:
double val = 3.14159;
printf("Pi is %.2lf\n", val);This will display:
"Pi is 3.14" 
You can specify both the width of the output (for example, six spaces) and the number of decimals to display by doing something like this:
double val = 3.14159;
printf("Pi is %6.2lf\n", val);