Извините за, возможно, не ответ, но странно, что ваш компилятор не сказал вам инициализировать сумму. Во-вторых, я проверил ваш код, и он работает правильно, как и ожидалось, это означает, что если проблема не в переменной суммы, вы сделали что-то еще для этих полей где-то еще, чтобы ваш код не работал правильно.
Имея в виду ваш комментарий к предыдущему человеку, я бы сказал то же самое. В некоторых случаях (я знаю, это забавно, но) у вас могут быть вирусы на вашем компьютере. Проверь это. Однажды в своей жизни я провалил свою лабораторную работу по математике из-за вируса, который прервал мою программу, поэтому он нарисовал неправильную диаграмму!