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

来源:1-1 初始C语言

慕粉18846046435

2016-08-07 09:29

#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回答

  • 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

    Shim_w... 回复慕粉1884...

    不客气 :-D

    2016-08-07 10:09:55

    共 2 条回复 >

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

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

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

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

    Shim_w...

    可以的

    2016-08-07 09:52:41

    共 1 条回复 >

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

    因为ch1是字符,不是数

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

    最后的结果是不是5760

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926206 学习 · 20797 问题

查看课程

相似问题