Nick Gammon's comment was aimed at my example just in case that wasn't clear to you!
I was actually thinking of:
With all due respect to Udo Klein.
In fact since digitalWrite is supposed to be sent HIGH or LOW, it really should be:
digitalWrite (led, (i & 1) ? LOW : HIGH); // toggle LED each iteration through the loop
As for unrolling the loop, these processors are rather short of program memory, so whether or not that was warranted would depend on whether you wanted to save space or time.
There was a thread not that long ago where someone "unrolled the loop" to speed up sending data out the SPI port as fast as possible. I showed that there was no point, as there was a delay anyway (17 clock cycles) before you could send more data, so the time saved in unrolling the loop did not actually give any benefit (the loop could be executed in under 17 clock cycles).
And as others have pointed out, if you are building in a delay of 1000 mS anyway, trying to save time is rather pointless.