You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现char类型数字与整数相乘?编程问题求解

解决char类型数字与int相乘的问题

要实现字符形式的数字和整数相乘,核心是把char类型的数字字符转换成对应的int数值。

字符'0'到'9'在ASCII表中是连续排列的,'0'的ASCII值为48,'1'是49,以此类推。只需用目标字符减去'0',就能得到对应的整数:

// 示例:字符'1'转成整数1
int num = NUMBER - '0';

修改后的可运行代码示例:

// 定义你选定的乘数,比如设为5
int multiplier = 5;
char NUMBER = In.read();
while (NUMBER != '\n') {
    // 将字符数字转为对应整数
    int digit = NUMBER - '0';
    // 执行相乘操作
    int result = digit * multiplier;
    // 输出计算结果,格式可按需调整
    Out.println(NUMBER + " × " + multiplier + " = " + result);
    NUMBER = In.read();
}

补充说明

  • 若输入包含非数字字符,直接转换会得到错误数值,可添加判断过滤:if (NUMBER >= '0' && NUMBER <= '9'),确保只处理有效数字。
  • 你之前尝试ASCII码未成功,大概率是直接用字符的ASCII值去相乘(比如用'1'的ASCII码49去乘),而非先转成对应数字后计算,这是关键差异点。

内容的提问来源于stack exchange,提问作者Krister Karlson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 04:42:05