Jak używać %i i %d do drukowania liczby całkowitej w C za pomocą printf()

Jak Uzywac I I D Do Drukowania Liczby Calkowitej W C Za Pomoca Printf



W języku programowania C specyfikatory formatu odgrywają kluczową rolę, ponieważ pomagają w wyświetlaniu wartości na wyjściu. Te specyfikatory formatu są używane z funkcją printf() do określania typu danych, które mają zostać wydrukowane. 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 specyfikatory formatu, postępuj zgodnie ze wskazówkami z tego artykułu.

Specyfikator formatu %i

W języku programowania C tzw %I służy do drukowania liczby całkowitej ze znakiem, gdy jest używana z funkcją printf(). Liczby całkowite ze znakiem to te, które mogą być dodatnie lub ujemne. W programowaniu C przy użyciu %i przekazywana wartość argumentu musi być wyrażeniem lub typem całkowitym, który automatycznie ocenia w typie danych całkowitym. Możesz także skorzystać z tzw %I specyfikator, aby odczytać wartość znaku, która mieści się w zakresie liczby całkowitej ze znakiem.







%d Specyfikator formatu

The %D z drugiej strony specyfikator formatu służy do drukowania liczby całkowitej bez znaku w języku programowania C. Tutaj liczby całkowite bez znaku są dodatnimi liczbami całkowitymi. 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().



Przejdźmy do przykładowego kodu, w którym używane są oba specyfikatory formatu.





#include

int główny ( ) {

int cyfra ;

drukujf ( 'Proszę wprowadzić dowolną cyfrę: ' ) ;

skanf ( '%I' , & cyfra ) ;

drukujf ( ' \N Cyfra to: %i \N ' , cyfra ) ;

drukujf ( „Cyfra to: %d \N ' , cyfra ) ;

powrót 0 ;

}

W tym kodzie najpierw inicjujemy zmienną i pobieramy wartość od użytkownika za pomocą scanf(). Następnie pokazujemy dane wyjściowe za pomocą %di %i .

Wyjście:



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

Jeśli jednak spojrzymy na funkcję scanf, możemy je poprawnie rozróżnić. W powyższym kodzie, jeśli wprowadzimy wartość dziesiętną, np „012” . Jeśli używamy '%D' zamiast %I, otrzymasz wynik 12. Powodem jest to %D ignoruje wartość 0 zero z danych wejściowych użytkownika.

#include

int główny ( ) {

int cyfra ;

drukujf ( 'Proszę wprowadzić dowolną cyfrę: ' ) ;

skanf ( '%D' , & cyfra ) ;

drukujf ( ' \N Cyfra to: %i \N ' , cyfra ) ;

drukujf ( „Cyfra to: %d \N ' , cyfra ) ;

powrót 0 ;

}

Wyjście

Jeśli ta sama wartość zostanie wprowadzona za pomocą %I podobnie jak w funkcji scanf(), w tym przypadku wynikiem będzie 10. Powodem jest %I drukuje wartość dziesiętną 012 (reprezentacja ósemkowa).

#include

int główny ( ) {

int cyfra ;

drukujf ( 'Proszę wprowadzić dowolną cyfrę: ' ) ;

skanf ( '%I' , & cyfra ) ;

drukujf ( ' \N Cyfra to: %i \N ' , cyfra ) ; //wyjście na buty

drukujf ( „Cyfra to: %d \N ' , cyfra ) ; //wyjście na buty

powrót 0 ;

}

Wniosek

Specyfikator formatu to wzorzec, który początkowo zaczyna się od % znak i zwykle mówi nam, jakie dane są umieszczane na wejściu i jakie dane mają być pokazane. %D I %I to dwa specyfikatory szeroko stosowane w programowaniu w C. Są podobne, gdy są używane z funkcją printf(), ale dają inne wyniki, gdy są używane z funkcją scanf().