#c #initialization #declaration #do-while
Вопрос:
Сумма чисел, встречающихся в таблице умножения 8. Что не так с моим кодом? Желаемый результат-440, а я получаю 33204.
#include <stdio.h>
int
main ()
{
int sum, n, p;
printf ("Sum of numbers occurring in the multiplication table of 8: ");
do
{
p = 8 * n;
sum = p;
n ;
}
while (n <= 10);
printf ("%d", sum);
return 0;
}
Комментарии:
1. Какова начальная стоимость
n
? Помните, что неинициализированные переменные действительно неинициализированы. С неопределенными значениями.
Ответ №1:
Вы используете неинициализированные переменные
int sum, n, p;
которые имеют неопределенные значения.
В результате ваша программа ведет себя неопределенно.
Вам нужно инициализировать их следующим образом
int sum = 0, n = 1, p;