WZ℡T
2018-12-05 02:26
采纳率: 52.9%
浏览 427
已采纳

大佬们看看这道题 带一下注释 谢谢大佬

把一个整数的每个数位都平方后求和,又得到一个整数,我们称这个整数为:位平方和。

对新得到的整数仍然可以继续这一运算过程。

比如,给定整数为4,则一系列的运算结果为:

16,37,58,89,....

本题的要求是,已知一个整数x,求第n步的运算结果。

数据格式要求:

输入,两个整数x n,中间以空格分开。表示求x的第n步位平方和。其中,x,n都大于0,且小于100000。
输出,一个整数,表示所求结果。

例如,
输入:
4 3
则程序应该输出:
58

再例如,
输入:
1314 10
则程序应该输出:
20

资源约定:
峰值内存消耗 < 256M
CPU消耗 < 1000ms

注意: main函数需要返回0
注意: 只使用ANSI C/ANSI C++ 标准,不要调用依赖于编译环境或操作系统的特殊函数。
注意: 所有依赖的函数必须明确地在源文件中 #include , 不能通过工程设置而省略常用头文件。

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • threenewbee 2018-12-07 15:55
    已采纳
    #include  <stdio.h>
    
    int main()
    {
        int m,n;
        int temp,sum;
        int i;
    
        scanf("%d%d",&m,&n);
    
        for(i=0;i<n;i++)
        {
            sum=0;
            while(m){
                sum=sum+(m%10)*(m%10);
                m=m/10;
            }
            m=sum;
        }
    
        printf("%d\n",sum);
    
        return 0;
    }
    

    https://blog.csdn.net/softwareldu/article/details/42048521

    评论
    解决 无用
    打赏 举报
查看更多回答(1条)

相关推荐 更多相似问题