zoukankan      html  css  js  c++  java
  • 1109 根数

    题目来源:
    https://acm.zzuli.edu.cn/zzuliacm/problem.php?id=1109

    Description
     输入一个正整数,输出该数的数根。数根可以通过把一个数的各个位上的数字加起来得到。如果得到的数是一位数,那么这个数就是数根。如果结果是两位数或者包括更多位的数字,那么再把这些数字加起来。如此进行下去,直到得到是一位数为止。比如,对于24来说,把2和4相加得到6,由于6是一位数,因此6是24的数根。再比如39,把3和9加起来得到12,由于12不是一位数,因此还得把1和2加起来,最后得到3,这是一个一位数,因此3是39的数根。 
    要求使用函数,定义函数digitSum(int n)求n的各位数字和,其余功能在main()函数中实现。 
    int digitSum(int n) 

    //函数返回n的各位数字之和 

    Input
    输入一个int范围内的正整数n


    Output
     输出n的数根
    Sample Input
    39
    Sample Output
    3

    题意描述:
    输入正整数n(int 范围内)
    如果n为个位数输出n,否则计算各位数字的和,直到数字是一个个位数输出

    解题思路:
    递归调用digitSum()函数输出n各位数字之和,直到返回值是一个个位数为止

    程序代码:

     1 #include<stdio.h>
     2 int digitSum(int n);
     3 int main()
     4 {
     5     int n;
     6     while(scanf("%d",&n) != EOF)
     7     {
     8         printf("%d
    ",digitSum(n));
     9     }
    10     return 0;
    11 }
    12 int digitSum(int n)
    13 {
    14     int i,sum=0;
    15     if(n>=10) 
    16     {
    17         while(n)
    18         {
    19             sum += n%10;
    20             n /= 10;
    21         }
    22         return digitSum(sum);
    23     }
    24     else
    25     return n;
    26 }

    易错分析:
    注意不是简单计算n的各位数字之和

    你的每一个点赞、一句留言,都将是是博主前进的动力,欢迎交流,共同进步——
  • 相关阅读:
    回到顶部
    angularjs 复选框 单选框
    关于angularjs的ng-repeat指令
    JS字符串对象
    JS的控制语句与异常
    JS的运算符
    JS的引入方式和基础规范
    z-index及透明度opacity,利用overflow设置头像
    css的定位
    css的float属性及清除浮动
  • 原文地址:https://www.cnblogs.com/wenzhixin/p/6777618.html
Copyright © 2011-2022 走看看