(1)有關十六進制怎樣與十進制換算?(如0xffff)(2)有ch1=getchar();ch2=getchar();當輸入12時怎樣讀入?(3)main(){char a,b,c,d; scanf("%c,%c,%d,%d",&a,&b,&c,&d); printf("%c,%c,%c,%c\n",a,b,c,d);}輸入6,5,65,66輸出為什么是6,5,A,B?
熱心網友
(1)就拿FFFF為例子,因為F代表15,所以是15*(16的3次方)+15*(16的2次方)+15*(16的1次方)+15*(16的0次方),得到的數字就是FFFF的十進制得數!(2)當輸入12的時候,1作為字符輸入到了CH1,2作為字符輸入到了CH2(3)a,b,c,d都是字符型的變量,當你輸入6,5,65,66的時候,前面2個數字是當作字符存儲的,后面輸入了2個數字是轉換成數值型數據存儲的,然后,在輸出的時候,因為是用“%C”作為輸入轉義符,就代表全部都要按照字符來輸出,那么,前面2個數字當作字符原封不動的輸出出來,后面2個數字要轉換為字符型的數據,數值65對應的字符是字母A,數值66對應的字符是字母B,所以就會有這樣的輸出!另外,在C語言中,字符型的數據和數字型的數據可以相互自由轉換,詳情請參考ASCII碼表!