2016-07-02 48 views
-6

user.how输入一个5位正数来计算用户在函数的帮助下输入的位数之和?这个程序中使用的逻辑是什么

+1

你必须尝试自己做作业。如果你正在学习编程,你不能逃避程序。 –

+1

如果您正在寻找一些帮助。这里有一个链接,可以帮助你 - [C程序找到数字总和使用递归](http://www.codeforwin.in/2016/03/c-program-to-calculate-sum-of-digits-using -recursion.html)。 –

+0

我投票结束这个问题作为题外话,因为要求代码不是本网站的目的。请阅读常见问题。 – davidcesarino

回答

0

初学者应该互相帮助。:)

给你。

#include <stdio.h> 

unsigned int digits_sum(unsigned int value) 
{ 
    const unsigned int Base = 10; 
    unsigned int sum = 0; 

    do { sum += value % Base; } while (value /= Base); 

    return sum; 
} 

int main(void) 
{ 
    unsigned int value = 12345; 

    printf("The sum of digits of number %u is %u\n", value, digits_sum(value)); 

    return 0; 
} 

程序输出是

The sum of digits of number 12345 is 15 

的逻辑很简单。要获得号码的最后一位数字,您应该应用运营商%。然后你需要在下一个步骤中将数字除以10得到最后一个数字之前的数字,依此类推。

+0

@TZHX回答问题我有一个练习。 :)其实这是我自己的作业。 –