Como usar %i e %d para imprimir inteiro em C usando printf ()

Como Usar I E D Para Imprimir Inteiro Em C Usando 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 precisa ser enviado. Um dos especificadores de formato amplamente usados ​​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 %eu e %d especificadores de formato, siga as diretrizes deste artigo.

%i Especificador de Formato

Na linguagem de programação C, o %eu é usado para imprimir um inteiro com sinal quando usado com a função printf(). Os inteiros com sinal são aqueles que podem ser positivos ou negativos. Na programação C, ao usar %i, o valor do argumento que está passando deve ser uma expressão ou um tipo inteiro que avalia automaticamente em um tipo de dados inteiro. Você também pode usar o %eu especificador para ler um valor de caractere que esteja dentro do intervalo de um inteiro com sinal.







Especificador de Formato %d

O %d o especificador de formato, por outro lado, é usado para imprimir o inteiro sem sinal na linguagem de programação C. Aqui inteiros sem sinal são inteiros positivos. Na linguagem C, quando você usa %d, o valor do tipo de argumento int .



Diferenças

Ambos %eu e %d especificadores de formato são freqüentemente usados ​​na linguagem de programação C para imprimir números inteiros. Eles podem parecer semelhantes em termos de uso, bem como se comportar da mesma forma ao usar a função printf().



Vamos seguir com um exemplo de código em que ambos os especificadores de formato são usados.





#include

int principal ( ) {

int dígito ;

printf ( 'Insira qualquer dígito: ' ) ;

scanf ( '%eu' , & dígito ) ;

printf ( ' \n O dígito é: %i \n ' , dígito ) ;

printf ( 'O dígito é: %d \n ' , dígito ) ;

retornar 0 ;

}

Neste código, primeiro inicializamos uma variável e pegamos o valor do usuário usando scanf(). Em seguida, mostramos a saída usando %d e %i .

Saída:



Ambos fornecem uma saída semelhante quando usados ​​com o printf() função. Não importa se você digita o 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ê obterá a saída 12. A razão é que %d ignora o valor 0 zero da entrada do usuário.

#include

int principal ( ) {

int dígito ;

printf ( 'Insira qualquer dígito: ' ) ;

scanf ( '%d' , & 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).

#include

int principal ( ) {

int dígito ;

printf ( 'Insira qualquer dígito: ' ) ;

scanf ( '%eu' , & 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 na entrada e quais dados devem ser mostrados. %d e %eu são dois especificadores amplamente usados ​​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().