This seemingly different behavior is actually consistent with the rule that a parameter gets THE VALUE of its argument. It is just that the value of an array argument (the base address of the array) is different than the value of an int, float, struct, ..., argument.
The typical NFL player makes $860,000 per year in 2015. Players like Drew Brees ($23.8 million) and Philip Rivers ($21.2 million) make a lot more. The minimum NFL salary is $435,000 per year. There are 32 teams in the NFL with 53 players each. That makes 1,696 NFL players total. Total salary money of about $3.6 billion is split between all players.
Not all NFL players make as much money as the sport's stars, of course. Last year, the average salary in the league was just over $2 million. The average salary for the top 100 players in the NFL is $11.6 million, 29 percent less than that of the top MLB players and 13 percent less than NBA's best. The lowest-paid players in the NFL made a relatively meager $420,000, reports Forbes. That's less than one percent of the $44 million NFL President Roger Goodell takes home, and reflects a salary cap system that has teams investing the bulk of their money into their top few players.