printf是格式化輸出函數,它能夠直接打印十進制,八進制,十六進制,輸出控制符分別爲%d, %o, %x, 可是它不存在二進制,若是輸出二進制,能夠手寫,可是也能夠調用stdlib.h裏面的itoa函數,他不是標準庫裏面的函數,可是大多數編譯器裏面都有這個函數,因此就介紹一下數組
itoa函數的原型爲char* itoa(int value, char * string, int radix); int value 被轉換的整數,char *string 轉換後儲存的字符數組int radix 轉換進制數,如2,8,10,16 進制等,函數
下面是測試程序:測試
1 #include <stdio.h> 2 #include <stdlib.h> 3 4 int main() 5 { 6 7 int a = 12; 8 printf("八進制 --> %o\n", a); 9 printf("十六進制 --> %X\n", a); 10 printf("十進制 --> %d\n", a); 11 char s[10]; 12 itoa(a, s, 2); 13 printf("二進制 --> %s\n", s); 14 itoa(a, s, 3); 15 printf("三進制 --> %s\n", s); 16 return 0; 17 }