我正在构建一个计算程序,该程序应该询问用户最多7位数的数字,然后计算数字的总和 .

例如:数字= 1259955,总和= 36(通过将每个数字相加,1 2 5 9 9 5 5 = 36) .

然后程序应列出上述总和的所有除数

示例:sum = 8,divisors = 1,2,3,4,6,9,12,18,36

我的代码执行sum部分但不执行除数部分:

int number;
int sum = 0;

Console.WriteLine("Enter a number with at most 7 digits: ");
number = Convert.ToInt32(Console.ReadLine());

while (number != 0)
{
   sum += number % 10;
   number /= 10;
}

Console.WriteLine("Sum of the digits of " + number + " is " + sum);

for (int i = 1; i <= number; i++)
{
    if (number % i ==0)
    {
        Console.WriteLine("The divisors of " + sum + " are " + i.ToString());
    }
}

Console.ReadLine();

Console.Writeline("Sum of the digits of" + number + "is"+ sum) 行正在执行时,输出为:

Sum of the digits 0 is 36

为什么说0?