Моя программа запрашивает у пользователя ввод целого числа и добавляет сумму цифр.Добавление цифр целого числа в C
#include <stdio.h>
int main (void)
{
int inputNum, sum;
// Gets the inputNum
printf("Type in a positive integer, and this program\nwill calculate the sums of the digits: ");
scanf("%i", &inputNum);
do
{
sum += (inputNum % 10);
inputNum /= 10;
} while (inputNum != 0);
printf("Your sum is: %i\n", sum);
}
Но каждый раз, когда он положил целое число, я получаю номер около 36000. Я видел еще один пример онлайн, который использовал% D, поэтому я попытался это, но это не имело никакого значения. Я только с неправильной стороны с самого начала? Заранее спасибо.
Вы никогда не инициализировали 'sum'; он может начинаться со значения '1,000,000' – abelenky
Если ваш компилятор не предупредил вас о вашей ошибке, выбросьте его. –
@ н.м .: Некоторые компиляторы не выполняют анализ потока данных для ошибок инициализации, если оптимизация не включена. – jxh