103 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			103 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| title: Format Specifiers
 | |
| localeTitle: Especificadores de formato
 | |
| ---
 | |
| # Especificadores de formato
 | |
| 
 | |
| Los especificadores de formato definen el tipo de datos que se imprimirán en la salida estándar. Ya sea para imprimir una salida formateada o para tomar una entrada formateada, necesitamos especificadores de formato. Los especificadores de formato también se llaman como cadena de formato. El especificador de formato se utiliza durante la entrada y la salida. Es una forma de decirle al compilador qué tipo de datos hay en una variable durante la toma de entrada con scanf () o la impresión con printf (). Algunos ejemplos son% c,% d,% f, etc.
 | |
| 
 | |
| Especificador de formato de caracteres:% c
 | |
| 
 | |
| # incluir
 | |
| 
 | |
| int main () { char ch = 'A'; printf ("% c \\ n", ch); devuelve 0; }
 | |
| 
 | |
| Salida: UN
 | |
| 
 | |
| Especificador de formato entero:% d,% i
 | |
| 
 | |
| # incluir
 | |
| 
 | |
| int main () { int x = 45, y = 90; printf ("% d \\ n", x); printf ("% i \\ n", x); devuelve 0; }
 | |
| 
 | |
| Salida: 45 45
 | |
| 
 | |
| Especificador de formato doble:% f,% e o% E
 | |
| 
 | |
| # incluir
 | |
| 
 | |
| int main () { flotar a = 12.67; printf ("% f \\ n", a); printf ("% e \\ n", a); devuelve 0; }
 | |
| 
 | |
| Salida: 12.670000 1.267000e + 01
 | |
| 
 | |
| Número octal sin signo para entero:% o
 | |
| 
 | |
| # incluir
 | |
| 
 | |
| int main () { int a = 67; printf ("% o \\ n", a); devuelve 0; }
 | |
| 
 | |
| Salida: 103
 | |
| 
 | |
| Hexadecimal sin signo para entero:% x,% X
 | |
| 
 | |
| # incluir
 | |
| 
 | |
| int main () { int a = 15; printf ("% x \\ n", a); devuelve 0; }
 | |
| 
 | |
| Salida: F
 | |
| 
 | |
| Impresión de cuerdas:% s
 | |
| 
 | |
| # incluir
 | |
| 
 | |
| int main () { char a \[\] = "nitesh"; printf ("% s \\ n", a); devuelve 0; }
 | |
| 
 | |
| Salida: Nitesh
 | |
| 
 | |
| * * *
 | |
| 
 | |
| scanf (formato char \*, arg1, arg2,…)
 | |
| 
 | |
| entero decimal:% d
 | |
| 
 | |
| # incluir
 | |
| 
 | |
| int main () { int a = 0; scanf ("% d", & a); // la entrada es 45 printf ("% d \\ n", a); devuelve 0; }
 | |
| 
 | |
| salida: 45
 | |
| 
 | |
| El entero puede ser octal o en hexadecimal:% i
 | |
| 
 | |
| # incluir
 | |
| 
 | |
| int main () { int a = 0; scanf ("% i", & a); // la entrada es 017 (octal de 15) printf ("% d \\ n", a); scanf ("% i", & a); // la entrada es 0xf (hexadecimal de 15) printf ("% d \\ n", a); devuelve 0; }
 | |
| 
 | |
| salida: 15 15
 | |
| 
 | |
| Tipo de datos flotante:% f,% e (doble),% lf (doble largo)
 | |
| 
 | |
| # incluir
 | |
| 
 | |
| int main () { flotar a = 0.0; scanf ("% f", & a); // la entrada es 45.65 printf ("% f \\ n", a); devuelve 0; }
 | |
| 
 | |
| Salida: 0.000000
 | |
| 
 | |
| Entrada de cadena:% s
 | |
| 
 | |
| # incluir
 | |
| 
 | |
| int main () { char str \[20\]; scanf ("% s", str); // la entrada es nitesh printf ("% s \\ n", str); devuelve 0; }
 | |
| 
 | |
| Salida: Nitesh
 | |
| 
 | |
| Entrada de caracteres:% c
 | |
| 
 | |
| # incluir
 | |
| 
 | |
| int main () { char ch; scanf ("% c", & ch); // la entrada es A printf ("% c \\ n", ch); devuelve 0; }
 | |
| 
 | |
| salida: UN
 | |
| 
 | |
| Los% especificadores que puede usar en ANSI C son:
 | |
| 
 | |
| | Especificador Utilizado para | |: -------------: |: -------------: | | % c | un solo personaje | | % s | una cuerda | | % hi | corto (firmado) | | % hu | corto (sin firmar) | | % Lf | largo doble | | % n | imprime nada | | % d | un entero decimal | | % o | un octal (base 8) entero | | % x | un entero hexadecimal (base 16) | | % p | una dirección (o puntero) | | % f | un número de punto flotante para flotadores | | % u | int decimal sin signo | | % e | Un número de punto flotante en notación científica | | % E | Un número de punto flotante en notación científica | | %% | ¡El símbolo! | |