Create a histogram of the lengths of words
Do not be shy on horizontal spacing. Add space after the keywords (e.g. while (, or if (). Insert space into ){.

If you place an opening curly bracket on the same line as if, be consistent with else:

  if () {
      ....
  } else {
      ....
  }

currentWord actually refers to the current word length. Consider renaming.
Instead of testing state == OUT, consider adding a word immediately, as soon as state become OUT:

    if (c == '\n' || c == ' ' || c == '\t') {
        if (currentWordLength &lt; MAXVAL) {
            ++wordLengths[currentWordLength - 1]; {
        } else {
            ++greaterThanMax;
        }
        currentWord = 0;
    }


Notice that with this approach you don't need to maintain state explicitly.
Every output line, except last one, starts with a single-digit number, but the last one starts with 10, and looks unaligned. Consider printing letter count with "%2d". 
The greater-than-max line doesn't end with a newline. Some shells (like cmd.exe) automatically add a newline to the last output. Unixish shells do not. On my system an output looks like

....
&gt;10: ==vnp&gt;


Even on Windows, try to redirect your output into a file.

It is usually a good idea to terminate the output with a newline.