Como usar %i e %d para imprimir o número inteiro em c usando o printf

Como usar %i e %d para imprimir o número inteiro em c usando o printf
Na linguagem de programação C, os especificadores de formato desempenham um papel crucial, pois ajudam você a exibir um valor na saída. Esses especificadores de formato são usados ​​com a função printf () para especificar o tipo de dados que precisam ser emitidos. Um dos especificadores de formato amplamente utilizados na linguagem de programação C são %eu e %d que são usados ​​para imprimir os números inteiros.

Se você não sabe sobre o %eu e %d Especificadores de formato, siga as diretrizes deste artigo.

%eu formato especificador

Na linguagem de programação C, o %eu é usado para imprimir um número inteiro assinado quando usado com a função printf (). Os números inteiros assinados são os que podem ser positivos ou negativos. Na programação C ao usar de %i, o valor do argumento que está passando deve ser uma expressão ou um tipo de número inteiro que avalia automaticamente em um tipo de dados inteiro. Você também pode usar o %eu Especificador para ler um valor de personagem que vem dentro do intervalo de um número inteiro assinado.

%d especificador de formato

O %d O especificador de formato, por outro lado, é usado para imprimir o número inteiro não assinado na linguagem de programação C C. Aqui números inteiros não assinados são números inteiros positivos. No idioma C quando você usa %d, o valor do tipo de argumentos int.

Diferenças

Ambos %eu e %d Especificadores de formato são frequentemente usados ​​na linguagem de programação C para imprimir números inteiros. Eles podem parecer semelhantes em termos de uso, além de se comportar o mesmo ao usar a função printf ().

Vamos acompanhar um código de amostra em que os dois especificadores de formato são usados.

#incluir
int main ()
int digit;
printf ("Por favor, insira qualquer dígito:");
scanf ("%i" e dígito);
printf ("\ n o dígito é: %i \ n", dígito);
printf ("O dígito é: %d \ n", dígito);
retornar 0;

Neste código, inicialmente inicializamos uma variável e assumimos o valor do usuário usando scanf (). Então mostramos saída usando %d e %eu.

Saída:

Ambos fornecem uma saída semelhante quando usado com o printf () função. Não importa se você entra no valor positivo ou negativo, o resultado sempre será o mesmo.

No entanto, se olharmos para a função SCANF, podemos diferenciá -los corretamente. No código acima, se inserirmos um valor decimal como “012”. Se usarmos “%D” em vez de %eu, você vai obter a saída 12. A razão é que %d ignora o valor zero 0 da entrada do usuário.

#incluir
int main ()
int digit;
printf ("Por favor, insira qualquer dígito:");
scanf ("%d" e dígito);
printf ("\ n o dígito é: %i \ n", dígito);
printf ("O dígito é: %d \ n", dígito);
retornar 0;

Saída

Se o mesmo valor for inserido usando %eu Como na função scanf (), a saída será 10 neste caso. A razão é %eu Imprime o valor decimal de 012 (representação octal).

#incluir
int main ()
int digit;
printf ("Por favor, insira qualquer dígito:");
scanf ("%i" e dígito);
printf ("\ n o dígito é: %i \ n", dígito); // saída de sapatos
printf ("O dígito é: %d \ n", dígito); // saída de sapatos
retornar 0;

Conclusão

O especificador de formato é um padrão que começa inicialmente com o % assinar e geralmente nos diz que tipo de dados é colocado em entrada e quais dados devem ser mostrados. %d e %eu são dois especificadores amplamente utilizados na programação C. Eles são semelhantes quando usados ​​com a função printf (), mas produzem resultados diferentes quando usados ​​com a função scanf ().