關于字符型和整型運算的疑問
#include<stdio.h>
#include<stdlib.h>
int?main()
{
?char?ch1,ch2,ch3;
?ch1='4';ch2='3';ch3='2';
?int?number;
?number=ch1*100+ch2*10+ch3;//這里出現了問題?
?printf("number=%d\n",number);
?system("pause");
?}?
?為什么第八行這樣得不了正確的結果呢?#include<stdio.h>
#include<stdlib.h>
int?main()
{
?char?ch1,ch2,ch3;
?ch1='4';ch2='3';ch3='2';
?int?number;
?number=ch1*100+ch2*10+ch3;//這里出現了問題?
?printf("number=%d\n",number);
?system("pause");
?}?
?為什么第八行這樣得不了正確的結果呢?2016-08-07
舉報
2016-08-07
ch1='4';ch2='3';ch3='2';
這里的‘4’,‘3’,‘2’都是字符型變量,進行整數運算時使用的是他們的ASCII代碼值,
‘4’==52,‘3’==51,‘2’==50,
52*100+51*10+50==5760
2016-08-07
這里運用char類型計算得到的是其對應的ASCII的運算值
2016-08-07
你能用一個char類型去做數學運算嗎?
2016-08-07
因為ch1是字符,不是數
2016-08-07
最后的結果是不是5760