Cómo usar %I y %D para imprimir entero en c usando printf

Cómo usar %I y %D para imprimir entero en c usando printf
En el lenguaje de programación C, los especificadores de formato juegan un papel crucial ya que lo ayudan a mostrar un valor en la salida. Estos especificadores de formato se utilizan con la función printf () para especificar el tipo de datos que deben emitirse. Uno de los especificadores de formato ampliamente utilizados en el lenguaje de programación C es %i y %d que se utilizan para imprimir los enteros.

Si no sabes sobre el %i y %d Formato de especificadores, siga las pautas de este artículo.

%I Formato Especificador

En el lenguaje de programación C, el %i se usa para imprimir un entero firmado cuando se usa con la función printf (). Los enteros firmados son los que pueden ser positivos o negativos. En la programación C, cuando se usa %i, el valor de argumento que está pasando debe ser una expresión o un tipo entero que evalúa automáticamente en un tipo de datos entero. También puedes usar el %i especificador para leer un valor de personaje que viene dentro del rango de un entero firmado.

%d de formato especificador

El %d El especificador de formato, por otro lado, se usa para imprimir el entero sin firmar en el lenguaje de programación C. Aquí los enteros sin firmar son enteros positivos. En lenguaje C cuando usa %d, entonces el valor del tipo de argumentos En t.

Diferencias

Ambos %i y %d Los especificadores de formato se usan con frecuencia en el lenguaje de programación C para imprimir enteros. Pueden parecer similares en términos de uso y comportarse lo mismo cuando se usa la función printf ().

Hagamos un seguimiento con un código de muestra donde se utilizan ambos especificadores de formato.

#incluir
int main ()
int digit;
printf ("Ingrese cualquier dígito:");
scanf ("%i", y dígito);
printf ("\ n el dígito es: %i \ n", dígito);
printf ("El dígito es: %d \ n", dígito);
regresar 0;

En este código, primero inicializamos una variable y tomamos valor del usuario usando scanf (). Luego mostramos la salida usando %d y %i.

Producción:

Ambos proporcionan una salida similar cuando se usan con el printf () función. No importa si ingresa el valor positivo o negativo, el resultado siempre será el mismo.

Sin embargo, si observamos la función de scanf, podemos diferenciarlos correctamente. En el código anterior, si ingresamos un valor decimal como "012". Si usamos "%d" en lugar de %i, Obtendrá la salida 12. La razón es que %d ignora el valor de 0 cero de la entrada del usuario.

#incluir
int main ()
int digit;
printf ("Ingrese cualquier dígito:");
scanf ("%d", y dígito);
printf ("\ n el dígito es: %i \ n", dígito);
printf ("El dígito es: %d \ n", dígito);
regresar 0;

Producción

Si se ingresa el mismo valor usando %i Como en la función scanf (), la salida será 10 en este caso. La razón es %i Imprime el valor decimal de 012 (representación octal).

#incluir
int main ()
int digit;
printf ("Ingrese cualquier dígito:");
scanf ("%i", y dígito);
printf ("\ n el dígito es: %i \ n", dígito); // Salida de zapatos
printf ("El dígito es: %d \ n", dígito); // Salida de zapatos
regresar 0;

Conclusión

El especificador de formato es un patrón que inicialmente comienza con el De % firmar y generalmente nos dice qué tipo de datos se colocan en la entrada y qué datos se deben mostrar. %d y %i son dos especificadores ampliamente utilizados en la programación C. Son similares cuando se usan con la función printf () pero obtienen resultados diferentes cuando se usan con la función scanf ().