You were close:
BEGIN {print "start"}
{
printf "line %d: %s\n", NR , $0
printf "line %d: reversed:", NR
for(i=NF; i>=1; i--)
{
printf " %s", $i
}
print ""
}
The above is assuming you don't care about white space between fields.