例如:输入:982
输出:9 8 2 您的总和是:19
我看到人们在循环中使用 input_number % 10 然后 input_number/10 但我还是不明白。如果我做了 982 % 10,我会得到 2,然后他们将它加到 0 + 2 = 2 的总和上,那怎么会得到 19????然后输入数字 982/10 等于 9.82 如何引导我找到 19 的解决方案?我只是非常困惑,有人可以向我解释一下并尝试解决问题并将其变成一个简单的解决方案。我很感激,并尝试使用基本的东西,比如包含命名空间 std,然后不使用数组,只使用循环和简单的数学方程式,谢谢。
最佳答案
int n,sum=0;
cin>>n;
while(n!=0)
{
sum=sum+(n%10);
n=n/10;
}
/*
Since your n is an integer it will drop the value after decimal.
Therefore, 982 will run as
Iteration 1 n=982
sum=2
n=982/10=98
Iteration 2
sum=2+(98)%10 = 10
n=98/10= 9
Finaly in iteration 3
n=9/10=0 hence loop will terminate and sum be 19*/
关于c++ - 编写一个程序,提示用户输入一个整数,然后输出该数的各个数字和数字的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58946480/