Jak používat %i a %d k tisku celého čísla v C pomocí printf()

Jak Pouzivat I A D K Tisku Celeho Cisla V C Pomoci Printf



V programovacím jazyce C hrají specifikátory formátu klíčovou roli, protože vám pomáhají při zobrazování hodnoty na výstupu. Tyto specifikátory formátu se používají s funkcí printf() k určení typu dat, která je třeba vypsat. Jedním z široce používaných specifikátorů formátu v programovacím jazyce C jsou %i a %d které se používají k tisku celých čísel.

Pokud nevíte o %i a %d specifikátory formátu, postupujte podle pokynů v tomto článku.

%i Specifikátor formátu

V programovacím jazyce C, %i se používá k vytištění celého čísla se znaménkem při použití s ​​funkcí printf(). Celá čísla se znaménkem jsou ta, která mohou být kladná nebo záporná. V programování v jazyce C při použití %i musí být předávaná hodnota argumentu výraz nebo celočíselný typ, který se automaticky vyhodnotí jako celočíselný datový typ. Můžete také použít %i specifikátor pro čtení znakové hodnoty, která spadá do rozsahu celého čísla se znaménkem.







%d Specifikátor formátu

The %d specifikátor formátu se na druhé straně používá k vytištění celého čísla bez znaménka v programovacím jazyce C. Zde jsou celá čísla bez znaménka kladná celá čísla. V jazyce C, když použijete %d, pak hodnotu typu arguments int .



Rozdíly

Oba %i a %d specifikátory formátu se často používají v programovacím jazyce C pro tisk celých čísel. Mohou vypadat podobně, pokud jde o použití, stejně jako se mohou chovat stejně při použití funkce printf().



Podívejme se na ukázkový kód, kde jsou použity oba specifikátory formátu.





#include

int hlavní ( ) {

int číslice ;

printf ( 'Zadejte libovolnou číslici: ' ) ;

scanf ( '%i' , & číslice ) ;

printf ( ' \n Číslice je: %i \n ' , číslice ) ;

printf ( 'Číslice je: %d.' \n ' , číslice ) ;

vrátit se 0 ;

}

V tomto kódu nejprve inicializujeme proměnnou a převezmeme hodnotu od uživatele pomocí scanf(). Poté ukážeme výstup pomocí %d a %i .

Výstup:



Oba poskytují podobný výstup při použití s printf() funkce. Nezáleží na tom, zda zadáte kladnou nebo zápornou hodnotu, výsledek bude vždy stejný.

Pokud se však podíváme na funkci scanf, můžeme je správně odlišit. Ve výše uvedeném kódu, pokud zadáme desetinnou hodnotu jako '012' . Pokud použijeme '%d' namísto %i, dostanete výstup 12. Důvodem je to %d ignoruje nulovou hodnotu z uživatelského vstupu.

#include

int hlavní ( ) {

int číslice ;

printf ( 'Zadejte libovolnou číslici: ' ) ;

scanf ( '%d' , & číslice ) ;

printf ( ' \n Číslice je: %i \n ' , číslice ) ;

printf ( 'Číslice je: %d.' \n ' , číslice ) ;

vrátit se 0 ;

}

Výstup

Pokud je stejná hodnota zadána pomocí %i jako ve funkci scanf() bude v tomto případě výstup 10. Důvodem je %i vytiskne desetinnou hodnotu 012 (osmičkové zobrazení).

#include

int hlavní ( ) {

int číslice ;

printf ( 'Zadejte libovolnou číslici: ' ) ;

scanf ( '%i' , & číslice ) ;

printf ( ' \n Číslice je: %i \n ' , číslice ) ; //výstup na boty

printf ( 'Číslice je: %d.' \n ' , číslice ) ; //výstup na boty

vrátit se 0 ;

}

Závěr

Specifikátor formátu je vzor, ​​který zpočátku začíná na % a obvykle nám říká, jaký druh dat je umístěn na vstupu a jaká data mají být zobrazena. %d a %i jsou dva specifikátory široce používané v programování C. Při použití s ​​funkcí printf() jsou podobné, ale při použití s ​​funkcí scanf() poskytují jiné výsledky.