I\'m having a hard time understanding why
#include using namespace std; int fib(int x) { if (x == 1) { return 1; } else {
The reason is because Fibonacci sequence starts with two known entities, 0 and 1. Your code only checks for one of them (being one).
Change your code to
int fib(int x) { if (x == 0) return 0; if (x == 1) return 1; return fib(x-1)+fib(x-2); }
To include both 0 and 1.