You might look at your update history and see if one is showing as failed and not finishing later. It is hard to guess what might be wrong. There is a WindowsUpdate.log which might give some clues, but it is supposed to contain some private data so folks don't recommend posting it and it doesn't always help. But if you want to look through it, look for entries which mention "failed" and start from the bottom up. You may have to trace it back to where the updates stopped being successful.
But one way we used to try to repair Windows Update was to rename or delete the SoftwareDistribution folder in the Windows folder. It will force the system to recheck all the updates and reset the meta data which may have become corrupted.