问答详情
源自:1-1 初始C语言

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

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


提问者:慕粉18846046435 2016-08-07 09:29

个回答

  • Shim_wong
    2016-08-07 09:52:08
    已采纳

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

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

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

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

  • qq_橘生淮南_14
    2016-08-07 09:55:13

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

  • qq_II_6
    2016-08-07 09:48:25

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

  • weibo_我是一知晓晓晓晓淼_03795520
    2016-08-07 09:48:24

    因为ch1是字符,不是数

  • Shim_wong
    2016-08-07 09:46:54

    最后的结果是不是5760