Write pseudocode and include appropriate selection structures which represent the logic in the scenario below. Comment your pseudocode.

The Sports Administration Management has decided to offer life insurance to the players on the various teams. If a player is older than 25 years, he will undergo a risk assessment. If the player is a high-risk individual the premium will be 7% of their salary. If the player is a medium-risk individual their premium will be 4% of their salary and if the player is a low-risk individual their premium will be 2% of their salary. A message should be displayed to the user confirming the percentage of the salary the premium will constitute.

```

1. Read player's age and salary
2. If age > 25 then
3. Display "Player requires risk assessment"
4. Read risk level (High, Medium, Low)
5. If risk level is High then
6. premiumPercentage = 7
7. Else if risk level is Medium then
8. premiumPercentage = 4
9. Else if risk level is Low then
10. premiumPercentage = 2
11. premiumAmount = salary * premiumPercentage / 100
12. Else
13. premiumAmount = 0 (Player is not eligible for insurance)
14. Display "The premium will constitute " + premiumPercentage + "% of the salary."
```

Explanation:
1. The program reads the player's age and salary.
2. If the player's age is greater than 25, the program proceeds to check the risk level for the player.
3. Display a message indicating that the player requires a risk assessment.
4. Read the risk level from the user.
5. Depending on the risk level, assign the appropriate premium percentage.
6. If the risk level is high, set the premiumPercentage to 7.
7. If the risk level is medium, set the premiumPercentage to 4.
8. If the risk level is low, set the premiumPercentage to 2.
9. Calculate the premiumAmount by multiplying the salary with the premiumPercentage divided by 100.
10. If the player's age is less than or equal to 25, the player is not eligible for insurance and the premiumAmount is set to 0.
11. Display a message confirming the percentage of the salary the premium will constitute.

Here is the pseudocode with appropriate selection structures for the given scenario:

```
Set ageThreshold as 25
Set highRiskPercentage as 7
Set mediumRiskPercentage as 4
Set lowRiskPercentage as 2
Set playerAge // Input player's age
Set playerSalary // Input player's salary
Set premiumPercentage

// Check if the player is older than 25
if playerAge > ageThreshold:
Set riskCategory // Input risk category (high/medium/low)

// Determine the premium percentage based on risk category
if riskCategory is "high":
Set premiumPercentage as highRiskPercentage
else if riskCategory is "medium":
Set premiumPercentage as mediumRiskPercentage
else if riskCategory is "low":
Set premiumPercentage as lowRiskPercentage
else:
Display "Invalid risk category"
Exit program

else:
Set premiumPercentage as 0 // No risk assessment needed

// Calculate the premium amount
Set premiumAmount as (playerSalary * premiumPercentage) / 100

// Display the premium percentage to the user
Display "The premium will constitute " + premiumPercentage + "% of your salary."

// Display the premium amount to the user
Display "The premium amount is " + premiumAmount

```

In the above pseudocode, appropriate selection structures (`if`, `else if`, `else`) are used to determine the risk category and subsequently calculate the premium percentage. Comments are provided to explain the purpose and logic behind each step.