Cara Menggunakan %i dan %d untuk Mencetak Integer dalam C Menggunakan printf()

Cara Menggunakan I Dan D Untuk Mencetak Integer Dalam C Menggunakan Printf



Dalam bahasa pengaturcaraan C, penentu format memainkan peranan penting kerana ia membantu anda dalam memaparkan nilai pada output. Penentu format ini digunakan dengan fungsi printf() untuk menentukan jenis data yang perlu dikeluarkan. Salah satu penentu format yang digunakan secara meluas dalam bahasa pengaturcaraan C ialah %i dan %d yang digunakan untuk mencetak integer.

Jika anda tidak tahu tentang %i dan %d penentu format, ikut garis panduan artikel ini.

%i Penentu Format

Dalam bahasa pengaturcaraan C, the %i digunakan untuk mencetak integer yang ditandatangani apabila digunakan dengan fungsi printf(). Integer yang ditandatangani ialah yang boleh sama ada positif atau negatif. Dalam pengaturcaraan C apabila menggunakan %i nilai argumen yang dilalui mestilah ungkapan atau jenis integer yang secara automatik menilai dalam jenis data integer. Anda juga boleh menggunakan %i penentu untuk membaca nilai aksara yang terdapat dalam julat integer yang ditandatangani.







%d Penentu Format

The %d penentu format sebaliknya digunakan untuk mencetak integer yang tidak ditandatangani dalam bahasa pengaturcaraan C. Di sini integer tidak bertanda ialah integer positif. Dalam bahasa C apabila anda menggunakan %d maka nilai jenis argumen int .



Perbezaan

Kedua-duanya %i dan %d penentu format sering digunakan dalam bahasa pengaturcaraan C untuk mencetak integer. Mereka mungkin kelihatan serupa dari segi penggunaan serta berkelakuan sama apabila menggunakan fungsi printf().



Mari kita buat susulan dengan kod sampel di mana kedua-dua penentu format digunakan.





#include

int utama ( ) {

int digit ;

printf ( 'Sila Masukkan sebarang digit: ' ) ;

scanf ( '%i' , & digit ) ;

printf ( ' \n Digitnya ialah: %i \n ' , digit ) ;

printf ( 'Digitnya ialah: %d \n ' , digit ) ;

kembali 0 ;

}

Dalam kod ini kita mula-mula memulakan pembolehubah dan mengambil nilai daripada pengguna menggunakan scanf(). Kemudian kami menunjukkan output menggunakan %d dan %i .

Pengeluaran:



Kedua-duanya memberikan output yang sama apabila digunakan dengan printf() fungsi. Tidak kira sama ada anda memasukkan nilai positif atau negatif, hasilnya akan sentiasa sama.

Walau bagaimanapun, jika kita melihat fungsi scanf, kita boleh membezakannya dengan betul. Dalam kod di atas, jika kita memasukkan nilai perpuluhan seperti ā€œ012ā€ . Jika kita menggunakan ā€œ%dā€ bukannya %i, anda akan mendapat output 12. Sebabnya ialah %d mengabaikan nilai sifar 0 daripada input pengguna.

#include

int utama ( ) {

int digit ;

printf ( 'Sila Masukkan sebarang digit: ' ) ;

scanf ( '%d' , & digit ) ;

printf ( ' \n Digitnya ialah: %i \n ' , digit ) ;

printf ( 'Digitnya ialah: %d \n ' , digit ) ;

kembali 0 ;

}

Pengeluaran

Jika nilai yang sama dimasukkan menggunakan %i seperti dalam fungsi scanf(), output akan menjadi 10 dalam kes ini. Sebabnya ialah %i mencetak nilai perpuluhan 012 (perwakilan oktal).

#include

int utama ( ) {

int digit ;

printf ( 'Sila Masukkan sebarang digit: ' ) ;

scanf ( '%i' , & digit ) ;

printf ( ' \n Digitnya ialah: %i \n ' , digit ) ; //keluaran kasut

printf ( 'Digitnya ialah: %d \n ' , digit ) ; //keluaran kasut

kembali 0 ;

}

Kesimpulan

Penentu format ialah corak yang pada mulanya bermula dengan % tanda dan ia biasanya memberitahu kami jenis data yang diletakkan dalam input dan data yang akan ditunjukkan. %d dan %i adalah dua penentu yang digunakan secara meluas dalam pengaturcaraan C. Ia serupa apabila digunakan dengan fungsi printf() tetapi ia mengeluarkan hasil yang berbeza apabila digunakan dengan fungsi scanf().