Here is an intuitive reason why the theorem is true:
First, without loss of generality, assume a < b. Now draw the square whose corners are the points: (a,a) (a,b) (b,a) (b,b) Now draw the diagonal connecting the point (a,a) to the point (b,b). Note that you are drawing a portion of the line y = x. Now draw a random continuous (this is important) function that begins at some point f(a) on the y axis [note that a <= f(a) <= b] and ends at some point f(b) on the y axis (note that a <= f(b) <= b]. Does the function you drew intersect the diagonal you drew? My guess is that it does. Don't spend too much time trying to draw a function that doesn't touch the diagonal - you'll find it impossible. This is what the theorem is saying - that anytime you draw such a function, it must intersect the line y = x at least once. It will either intersect the line at x = a, at x = b, or at some point in the interval (a,b). For a proof, consider the following: Let a, b be real numbers with a < b. Let f: [a,b] --> [a,b] be continuous and let g: [a,b] --> [a,b] be defined by g(x) = x. Now define h(x) = f(x) - g(x) = f(x) - x. g(x) is clearly continuous on [a,b] and since f(x) is also continuous on [a,b], we know that h(x), which is the difference of two continuous functions, will also be continuous on [a,b]. Case 1: if f(a) = a, we're done. Case 2: assume f(a) > a. If f(b) = b, we're done. Case 3: assume f(a) > a and f(b) < b. then f(a) - a > 0 which implies h(a) > 0. we also have: f(b) - b < 0 which implies h(b) < 0. Let's summarize what we know: h(x) is continuous on [a,b], h(a) > 0, and h(b) < 0. The Intermediate Value Theorem will now give us that there exists a point c in the interval (a,b) such that h(c) = 0. But this means f(c) - c = 0 which implies f(c) = c which is exactly what we wanted to show.