Return statements enhance code readability and maintainability by providing clear exit points in functions, thus making the flow of control easier to understand. They allow programmers to know what value or result a function produces, which simplifies debugging and testing. By explicitly stating what a function returns, it becomes self-documenting, reducing the need for additional comments. This makes the code more readable and easier to maintain as changes can be made with an understanding of how they will affect the rest of the program.