A couple of apps I've installed or considered say they require internet access even though they have no obvious internet features. One of the most surprising ones was a simple compass app.
Why is this?
Usually apps require internet access for ads, analytical data, or for sending bug reports/stack traces back to the developer.
Other reasons might include
using Google's licensing servers to validate legitimate copies of apps with Android market purchases (Google's licensing servers use the CHECK_LICENSE permission). Similarly, some developers produce their own keys and license servers (prior to Google's implementation).
For instance, I am the developer of a tipping calculator app. It requires the internet permission to send analytical data back to me via Flurry. One day I plan to add this remote stack tracing program for more detailed errors (but I haven't yet because so far my app hasn't really generated any bugs/errors). But the value of this information is worth asking for the internet permission. I can see exactly how many users of what Android OS are using my app and what are the most popular phones using my app. However, I also give users an "opt out" in the settings if they choose to not send me this information.