В вашем коде есть две ошибки, как уже было указано в комментариях кого-то еще.
Во-первых, вы пытаетесь использовать c
без его инициализации.Помните, что в C ++ при объявлении встроенного типа без его инициализации он «инициализируется по умолчанию».Другими словами, если вы объявляете переменную встроенного типа внутри функции (в данном случае это функция main()
), ее значение не определено.Таким образом, вы не можете использовать его для проверки условия перед присвоением ему значения, и это именно то, что делает ваш цикл while
.
Во-вторых, вы толкаете в ostream только последний вычисленныйзначение c
.Другими словами, вы печатаете только последнее значение последовательности Фибоначчи.Попробуйте поместить свой оператор cout << c
в свой цикл.
PS .: По возможности используйте C++
версию C
библиотек (т. Е. <cstdio>
вместо <stdio.h>
и т. Д.)