That's what awk is for:
awk '{for(i=100;i<=NF;i+=100){printf "%s ",$i;} print ""}' file > output
Or, if you can have spaces inside your fields, specify tab as the field separator:
awk -F'\t' '{for(i=100;i<=NF;i+=100){printf "%s ",$i;} print ""}' file > output
Alternatively, you could use Perl:
perl -ane 'for($i=99;$i<=$#F;$i+=100){print "$F[$i] "}' file > output
To do this for multiple files, you can use a shell loop (assuming you want to run this on all files in the current directory):
for f in *; do
awk '{for(i=100;i<=NF;i+=100){printf "%s ",$i;} print ""}' "$f" > "$f".new;
done