为了账号安全,请及时绑定邮箱和手机立即绑定

关于字符型和整型运算的疑问

#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");
 } 
 为什么第八行这样得不了正确的结果呢?


正在回答

5 回答

ch1='4';ch2='3';ch3='2';

这里的‘4’,‘3’,‘2’都是字符型变量,进行整数运算时使用的是他们的ASCII代码值,

‘4’==52,‘3’==51,‘2’==50,

52*100+51*10+50==5760

0 回复 有任何疑惑可以回复我~
#1

慕粉18846046435 提问者

非常感谢!
2016-08-07 回复 有任何疑惑可以回复我~
#2

Shim_wong 回复 慕粉18846046435 提问者

不客气 :-D
2016-08-07 回复 有任何疑惑可以回复我~

这里运用char类型计算得到的是其对应的ASCII的运算值

0 回复 有任何疑惑可以回复我~

你能用一个char类型去做数学运算吗?

0 回复 有任何疑惑可以回复我~
#1

Shim_wong

可以的
2016-08-07 回复 有任何疑惑可以回复我~

因为ch1是字符,不是数

0 回复 有任何疑惑可以回复我~

最后的结果是不是5760

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

关于字符型和整型运算的疑问

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信