Microprocessor is a manager of the resources (I/O, Memory) which lie out-side of its architecture.
Micro-controllers have I/O, Memory etc. built into it and specially designed for Control applications.