钟于 忠于 衷于 终于 2022-03-31 12:21 采纳率: 100%
浏览 32
已结题

递归函数挨个输出输入的int字符,超过十位就出错,如何解决?

问题遇到的现象和发生背景

visual studio2019

问题相关代码,请勿粘贴截图

void frequency(int x) {
if (x>9)
{
frequency(x / 10);
}
printf("%d \n", x % 10);
}
int main()
{
int a = 0;
scanf_s("%d", &a);
printf("逐个打印为:\n");
frequency(a);
}

运行结果及报错内容

img

我的解答思路和尝试过的方法
我想要达到的结果

怎么才能不管多少位都能挨个打印输出

img

  • 写回答

3条回答 默认 最新

  • 卡尔曼的BD SLAMer 计算机视觉领域新星创作者 2022-03-31 12:30
    关注

    你定义的是个int 最大只能存65536 你输入的数天大了 int装不下

    建议定义成数组 存储

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月8日
  • 已采纳回答 3月31日
  • 创建了问题 3月31日

悬赏问题

  • ¥15 windows2003服务器按你VPN教程设置后,本地win10如何连接?
  • ¥15 求一阶微分方程的幂级数
  • ¥15 关于#线性回归#的问题:【统计】回归系数要转化为相关系数才能进行Fisher' Z转化吗(相关搜索:回归模型)
  • ¥100 使用matlab解决含分段变量的优化问题
  • ¥15 matlab基于鲸鱼算法优化vmd
  • ¥20 PCB设计与制作问答
  • ¥20 课堂跑如何下载ppt
  • ¥15 STM32阿里云平台显示不了传感器采集的数据
  • ¥20 三菱FX系列PLC上位机串口下指令置位M64和M65,这两条指令分别是什么呢?
  • ¥15 有关结冰模拟程序咨询