100 yards is a common standard, but any distance will do depending on the gun sight and what it is you are trying to accomplish.
For example, if you are using a simple dot reticle on a 32x scope for 1000 yard bench shooting you are going to zero at 1000 yards because you are aiming for ultimate accuracy at that range. You do not want a mil-dot affair and fiddling with the elevated graduations. You want to put the hairs precisely on the center of that tiny target and have at it. If you are scout/sniper milling about in the woods or in Afghanistan shooting at moving targets at constantly changing ranges, the requirements are completely different. You will usually zero at the range you believe will be most commonly encountered and adjust your sight picture to match conditions for range and windage. Simple in theory - not so easy in practice.
Good semi-auto rifle. How much?
I would never zero a rifle at 100 yards, the drop comps would be impossible at longer ranges. The Army specifies a BZO at 200 yards, and the Marines specify a BZO at 300 yards. All my rifles are zeroed at 300 yards.
A 300 yard zero is not going to hurt your aim anywhere inside of point blank range.
5.56 NATO:
M855 20" barrel MV 3100fps 300 yard zero
25 yd impact is 0.22" above point of aim
50 yd impact is 1.71" above point of aim
75 yd impact is 2.94" above point of aim
100 yd impact is 3.9" above point of aim
150 yd impact is 4.98" above point of aim
200 yd impact is 4.8" above point of aim
250 yd impact is 3.21" above point of aim
300 yd impact is 0" above point of aim
Maximum variance is at 175 yards, with the impact being 5" above the point of aim.
7.62x51 NATO
M80 21" barrel MV 2700fps 300 yard zero
25 yd impact is 0.62" above point of aim
50 yd impact is 2.43" above point of aim
75 yd impact is 3.91" above point of aim
100 yd impact is 5.06" above point of aim
150 yd impact is 6.27" above point of aim
200 yd impact is 5.94" above point of aim
250 yd impact is 3.91" above point of aim
300 yd impact is 0" above point of aim
Maximum variance is at 175 yards, with the impact being 6.31" above the point of aim.
If I am not mistaken, the Army set their BZO at 200 yards with the 7.62 round
M80 21" barrel MV 2700fps 200 yard zero
25 yd impact is 0.12" below point of aim
50 yd impact is 0.94" above point of aim
75 yd impact is 1.69" above point of aim
100 yd impact is 2.09" above point of aim
150 yd impact is 2.14" above point of aim
200 yd impact is 0" above point of aim
250 yd impact is 3.5" below point of aim
300 yd impact is 8.86" below point of aim
Although this gives you less variance inside of PBR (Point Blank Range) your 300 yard impact is enough off to make point of aim point of impact a little dicey.
Everybody agrees that the M855 from a 20" barrel is a round with an extremely flat trajectory. To illustrate my earlier point about a 100 yard zero...
5.56 NATO:
M855 20" barrel MV 3100fps 100 yard zero
25 yd impact is 0.75" below point of aim
50 yd impact is 0.25" below point of aim
75 yd impact is 0.01" above point of aim
100 yd impact is 0" above point of aim
150 yd impact is 0.88" below point of aim
200 yd impact is 3.01" below point of aim
250 yd impact is 6.56" below point of aim
300 yd impact is 11.68" below point of aim
Even with a ridiculously flat round like the M855 from a 20" barrel, the 300 yard range from a 100 yard zero is near a full foot low.
Now the standard .308 (7.62x51 NATO) when zeroed at 100 yards becomes neigh on impossible
7.62x51 NATO
M80 21" barrel MV 2700fps 100 yard zero
25 yd impact is 0.64" below point of aim
50 yd impact is 0.1" below point of aim
75 yd impact is 0.13" above point of aim
100 yd impact is 0" above point of aim
150 yd impact is 1.3" below point of aim
200 yd impact is 4.16" below point of aim
250 yd impact is 8.7" below point of aim
300 yd impact is 15.1" below point of aim
Bear in mind that ALL of this is at what the infantry calls "Point Blank Range" for a combat rifle. Once you get out to a longer range...for instance the M80 with a 100 yard zero
400 yd impact is 34.21" below point of aim
500 yd impact is 63.22" below point of aim
Of course, marksmen are taught to adjust sight settings to account for range. One reason I like 300 yard zeros is that the sight adjustments are a lot simpler (more consistent) You don't have to remember that some are up and some are down, they are all rear sight down.