The stdio library is a popular one for writing information. It can be used in both C and C++ programs. To use it in a C++ program, #include <cstdio>.
Use function printf (print-formatted), which takes a format string followed by zero or more values to be inserted into the format. The format can contain value designators, which start with %, and printf substitutes the n-th value parameter for the n-th value designator. For example, suppose that x is 25 and y is 500. Then
printf("x = %i and y = %i\n", x, y)writes string "x = 25 and y = 500\n" to the standard output.
Value designators are as follows.
%i | The value has type int. Show it as a (decimal) integer. (%i is the same as %d. The d stands for decimal.) |
%5i |
Like %i, but use at least 5 characters by adding
spaces on the left-hand side as necessary.
(If the number needs more than 5 characters
then it will not be shortened.) Number 5 in
this example is called a field width.
All of the value designators allow a field width. |
%−5i | Like %5i, but put the spaces on the right side instead of on the left side. |
%li | Like %i, but the value has type long. |
%c | The value has type char. Show it as a single character. |
%f %10.2f |
Show a number of type float. %10.1f shows the number using a total of at least 10 characters, with 2 digits shown to the right of the decimal point. |
%lf %10.2lf |
Similar to %f, but the value has type double. |
%10.2e %10.2le |
Like %f or %lf, but use E format, showing the value using scientific notation. |
%s | The value is a null-terminated string. Show it as a string. |
%p | The value is a pointer. Show it as a memory address in base 16, prefixed by 0x. A NULL pointer is shown as 0x0 or (null). |
Statement
putchar(c);is equivalent to
printf("%c", c);but putchar is much more efficient.
Statement
printf("My sister is named %s and she is %i years old\n", "Laura", 10);writes
My sister is named Laura and she is 10 years oldBe sure not to forget to add \n if you want to end the line. Statements
printf("I am "); printf("anxious to finish\n");writes
I am anxious to finishAlso do not forget spaces. Statement
printf("%i%i\n", 25, 32);writes
2532
Suppose that variable mass is an integer (type int). Write a printf statement that writes
This thing's mass is ... kilogramswhere the ... has been replaced by the value of mass. Write an end-of-line at the end of it. Answer