#include <stdio.h> int printf(const char *format, ...);
Muestra datos por pantalla según un formato. El primer parámetro establece el formato el cual contiene caracteres a imprimir así como especificadores de mostrado de otros argumentos que comienzan con %. Cada especificador de mostrado contiene los siguientes campos:
flag | Descripción | Ejemplo de formato |
---|---|---|
- |
Justificación izquierda del campo | printf("valor %-d",i) |
+ |
Provoca la aparición de un signo + en los números positivos | printf("Acumula %+d",i) |
Especificador | Descripción |
---|---|
c | Un carácter |
d | Un entero |
i | Un entero |
u | Un entero sin signo |
o | Un entero sin signo en octal |
x | Un entero sin signo en hexadecimal |
ld | Un entero largo |
lu | Un entero largo sin signo |
lo | Un entero largo sin signo en octal |
lx | Un entero largo sin signo en hexadecimal |
lld | Un entero más largo (long long) |
llu | Un entero más largo sin signo |
llo | Un entero más largo sin signo en octal |
llx | Un entero más largo sin signo en hexadecimal |
e | Un número en coma flotante (float y double si se precede de l). La representación siempre tiene un exponente |
f | Un número en coma flotante (float y double si se precede de l). La representación nunca tiene exponente |
g | Un número en coma flotante (float y double si se precede de l). La representación tiene exponente si lo necesita |
Le | Un número en coma flotante (long double). La representación tiene exponente si lo necesita |
Lf | Un número en coma flotante (long double). La representación tiene exponente si lo necesita |
Lg | Un número en coma flotante (long double). La representación tiene exponente si lo necesita |
s | Una ristra con marcador de final de ristra |
p | Un puntero |
% | Se imprime un único símbolo % |
El número de caracteres escritos.
ANSI, POSIX
#include <stdio.h> int main(){ char c1, c2, c3; int k; float x, z; double y; char r[11]="caracteres"; printf("\nIntroduzca lo siguiente: tres caracteres,\n"); printf(" un int,\n" " un float,\n" " un float,\n" " y un double: "); scanf("%c%c%c%d%f%f%lf", &c1, &c2, &c3, &k, &x, &z, &y); printf("\néstos son los datos introducidos:\n"); printf(" %c %c %c %d %e %f\n\n",c1,c2,c3,k,x,y); /* Se muestran: k ocupando 4 caracteres y z ocupando 6 caracteres, tres para la mantisa, uno para el punto y dos para los decimales */ printf("%-4d %6.2f%% porcentaje de %s\n",k,z,r); return 0; }