Jak używać %I i %D do drukowania liczby całkowitej w C za pomocą printf

Jak używać %I i %D do drukowania liczby całkowitej w C za pomocą printf
W języku programowania C specyfikatory formatu odgrywają kluczową rolę, ponieważ pomagają wyświetlać wartość na wyjściu. Te specyfikatory formatu są używane z funkcją printf (), aby określić typ danych, które muszą być wysyłane. Jednym z powszechnie używanych specyfikatorów formatu w języku programowania C są %I I %D które są używane do drukowania liczb całkowitych.

Jeśli nie wiesz o %I I %D Sformatuj specyfikatory, postępuj zgodnie z wytycznymi tego artykułu.

%i formatowy specyfikator

W języku programowania C, %I służy do wydrukowania podpisanej liczby całkowitej, gdy jest używana z funkcją printf (). Podpisane liczby całkowite to te, które mogą być pozytywne lub negatywne. W programowaniu C podczas korzystania z %I wartość argumentu, która jest przekazywana, musi być wyrażeniem lub typem liczby całkowitej, która automatycznie ocenia się w danych danych całkowitowych. Możesz także użyć %I specyfikator do odczytania wartości znaku, który znajduje się w zakresie podpisanej liczby całkowitej.

%D specyfikator formatu D

%D Z drugiej strony specyfikator formatu służy do wydrukowania niepodpisanej liczby całkowitej w języku programowania C. Tutaj niepodpisane liczby całkowite to pozytywne liczby całkowite. W języku C, gdy używasz %d, to wartość typu argumentów int.

Różnice

Obydwa %I I %D Specyfikatory formatu są często używane w języku programowania C do drukowania liczb całkowitych. Mogą wyglądać podobnie pod względem użytkowania, a także zachowywać się tak samo podczas korzystania z funkcji printf ().

Śledźmy przykładowy kod, w którym używane są oba specyfikatory formatu.

#włączać
int main ()
int digit;
printf („Wprowadź dowolną cyfrę:”);
Scanf („%I” i Digit);
printf („\ n Digit to: %i \ n”, cyfra);
printf („cyfra to: %d \ n”, cyfra);
powrót 0;

W tym kodzie najpierw zainicjujemy zmienną i przyjmujemy wartość od użytkownika za pomocą scanf (). Następnie pokazujemy wyjście za pomocą %d i %i.

Wyjście:

Oba zapewniają podobne wyjście, gdy są używane z printf () funkcjonować. Nie ma znaczenia, czy wprowadzasz wartość dodatnią, czy ujemną, wynik zawsze będzie taki sam.

Jeśli jednak spojrzymy na funkcję scanf, możemy je poprawnie odróżnić. W powyższym kodzie, jeśli wprowadzimy wartość dziesiętną, taka „012”. Jeśli używamy "%D" zamiast %I, Otrzymasz wyjście 12. Powód jest taki, że %D ignoruje wartość 0 zerową z wejścia użytkownika.

#włączać
int main ()
int digit;
printf („Wprowadź dowolną cyfrę:”);
Scanf („%d” i cyfra);
printf („\ n Digit to: %i \ n”, cyfra);
printf („cyfra to: %d \ n”, cyfra);
powrót 0;

Wyjście

Jeśli ta sama wartość jest wprowadzana za pomocą za pomocą %I Jak w funkcji scanf (), dane wyjściowe wyniesie 10 w tym przypadku. Powodem jest %I Wydrukuje wartość dziesiętną 012 (reprezentacja ósemka).

#włączać
int main ()
int digit;
printf („Wprowadź dowolną cyfrę:”);
Scanf („%I” i Digit);
printf („\ n Digit to: %i \ n”, cyfra); // wyjściowe buty
printf („Cyfra to: %d \ n”, cyfra); // wyjście butów
powrót 0;

Wniosek

Specyfikator formatu to wzór, który początkowo zaczyna się od % podpisuj i zwykle mówi nam, jakie dane są wprowadzane do danych wejściowych i jakie dane mają zostać pokazane. %D I %I są dwa specyfikatory szeroko stosowane w programowaniu C. Są podobne, gdy są używane z funkcją printf (), ale wyświetlają różne wyniki, gdy są używane z funkcją scanf ().