Bresin. 2021-11-23 19:36 采纳率: 0%
浏览 27

为什么一直都是输出异常

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

一个正整数,如果从左向右读(称之为正序数)和从右向左读(称之为倒序数)是一样的,这样的数就叫回文数。任取一个正整数,如果不是回文数,将该数与他的倒序数相加,若其和不是回文数,则重复上述步骤,一直到获得回文数为止。例如:68变成154(68+86),再变成605(154+451),最后变成1111(605+506),而1111是回文数。于是有数学家提出一个猜想:不论开始是什么正整数,在经过有限次正序数和倒序数相加的步骤后,都会得到一个回文数。至今为止还不知道这个猜想是对还是错。现在请你编程序验证之。

输入

每行一个正整数。 特别说明:输入的数据保证中间结果小于2^31。

输出

对应每个输入,输出两行,一行是变换的次数,一行是变换的过程。

样例输入

27228
37649

样例输出

3
27228>109500>115401>219912
2
37649>132322>355553

问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

2条回答 默认 最新

  • CSDN专家-link 2021-11-23 19:39
    关注

    将每次计算结果存储到数组,独立一个函数进行变换

    #include <stdio.h>
    int hw(int n)
    {
        int s=0;
        while(n>0)
        {
            s = s*10+n%10;
            n/=10;
        }
        return s;
    }
    int main()
    {
         int a[10000];
         int num=0;
         int   n,p,i;
          scanf("%d",&n);
          p = n;
        int s = hw(n);
        while(s!= n)
        {
            a[num++] = n;
            n = s+n;
            s = hw(n);
        }
        printf("%d\n",num);
        for(i=0;i<num;i++)
            printf("%d>",a[i]);
        printf("%d",n);
    
        return 0;
    }
    
    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 11月23日

悬赏问题

  • ¥15 WPF动态创建页面内容
  • ¥15 如何对TBSS的结果进行统计学的分析已完成置换检验,如何在最终的TBSS输出结果提取除具体值及如何做进一步相关性分析
  • ¥15 SQL数据库操作问题
  • ¥100 关于lm339比较电路出现的问题
  • ¥15 Matlab安装yalmip和cplex功能安装失败
  • ¥15 加装宝马安卓中控改变开机画面
  • ¥15 STK安装问题问问大家,这种情况应该怎么办
  • ¥15 关于罗技鼠标宏lua文件的问题
  • ¥15 halcon ocr mlp 识别问题
  • ¥15 已知曲线满足正余弦函数,根据其峰值,还原出整条曲线