Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

In C programming 6.17 Ch 6 Program: Soccer team roster (C) This program will sto

ID: 3908583 • Letter: I

Question

In C programming

6.17 Ch 6 Program: Soccer team roster (C) This program will store rosler and raling information for a soccer leam. Coaches rate players during tryouts to ensure a balanced leam (1) Prompt the user to imput tive pairs of numbers: A player's jerscy number (-99) and the player's rating (1-9). Store the jersey numbers in one int array and the ratings in another int array. Output these arays (i.e., output the roter). (3 ps) Ex Enter player 1's jersey number: Enter player 1's rating Enter player 2's jersey number: 23 Enter player 2's rating Enter player 3's jersey number Enter player 3'a rating Enter player's jersey number: 30 Enter player's rating: Enter player 5's jersey number Enter player 5's rating ROSTER Player 1-Jersey number : 84, Rating: 7 Player 2--Jersey number:23, Rating: 4 (2) Implement a meu of options for a user to modify the roster, Each option is represented by a single character. The prograns initially outputs the menu, and outputs the menu after a user chooses an option. The program ends when the user chooses the option to Quit. For this step, the other options do nothing. (2 pt Ex -Update player rating aOutput players abave a rating r- Replace player o-Output roster q-Quit Choose an option: (3) Implement the "Output roster mena option.(1 pt) Ex: Player 1--Jersey number:84, Rating: Player 2--Jerscy nuber: 23, Rating: (4) Implement the "Update player rating" menu option. Prompe the user for a players jersey number. Prompt again for a new rating for the player, and then change that playcr's rating.(I pt) Ex: 1/2 624/2018 6.17.Ch6Program Socoer team roster (C) Enter a jersey number: 23 Enter a new rating for player (5) Implement the "Output players above a rating" menu option. Prompt the user for a rating. Print the jersey number and rating for all players with ratings above the entered value. (2 pts Ex Enter a rating ABOVE5 Player 1Jersey number: 84, Rating: (6) Implement the "Replace player" menu option. Prompt the user for the jersey number of the player to replace. If the player is in the roster, then prompt again for a new jersey number and rating. Update the replaced player's jersey number and rating. 2 pts) Ex Enter a jersey number Enter a new jersey number 12 Enter a rating for the new player:

Explanation / Answer

Here is code:

#include <stdio.h>

#include <stdlib.h>

const int SIZE = 5;

int main()

{

int jersey[SIZE];

int rating[SIZE];

char choice;

int i;

// read input from user and validating the data

for (i = 0; i < SIZE; i++)

{

printf(" Enter player %d's jersey number: ", (i + 1));

while (scanf("%d", &jersey[i]) != 1 || (jersey[i] < 0 || jersey[i] > 100))

{

// flush input buffer

fflush(stdin);

printf(" Wrong input: jersey number should be between (0-99) ");

}

printf("Enter player %d's rating: ", (i + 1));

while (scanf("%d", &rating[i]) != 1 || (rating[i] < 1 || rating[i] > 9))

{

// flush input buffer

fflush(stdin);

printf(" Wrong input: rating number should be between (0-9) ");

}

}

while (1)

{

printf(" ");

// scanf("%c", &choice);

fflush(stdin);

printf("------MENU----- u -Update player rating a -Output players above a rating r -Replace player o -Output roster q -Quit ");

choice = getchar();

// update jersey

if (choice == 'u')

{

int jNum, rNew;

printf("Enter a jersey number: ");

scanf("%d", &jNum);

int index = -1;

// check if jersey number is valid

for (i = 0; i < SIZE; i++)

{

if (jNum == jersey[i])

index = i;

}

if (index == -1) // if not found

{

// flush the cin data

fflush(stdin);

printf(" Wrong input: jersey number not found : try again ");

}

else

{

// if found

printf("Enter a new rating for player: ");

scanf("%d", &rNew);

rating[index] = rNew;

}

}

else if (choice == 'a') // Output players above a rating

{

int rate;

printf("Enter a rating: ");

scanf("%d", &rate);

printf("ABOVE %d ", rate);

for (int i = 0; i < SIZE; i++)

{

if (rate < rating[i])

printf("Player %d--Jersey number : %d, Rating : %d ", (i + 1), jersey[i], rating[i]);

}

}

else if (choice == 'r') // Replace player

{

int jNum, jNew, rNew;

printf("Enter a jersey number: ");

scanf("%d", &jNum);

int index = -1;

for (i = 0; i < SIZE; i++)

{

if (jNum == jersey[i])

index = i;

}

if (index == -1)

{

// flush the cin data

fflush(stdin);

printf(" Wrong input: jersey number not found : try again ");

}

else

{

printf("Enter a new jersey number: ");

scanf("%d", &jNew);

jersey[index] = jNew;

printf("Enter a new rating for player: ");

scanf("%d", &rNew);

rating[index] = rNew;

}

}

else if (choice == 'o') // Output roster

{

printf("ROSTER ");

for (i = 0; i < SIZE; i++)

{

printf("Player %d--Jersey number : %d, Rating : %d ", (i + 1), jersey[i], rating[i]);

}

}

else if (choice == 'q') // quit

break;

else // invalid entry

{

printf("Invalid entry : ");

}

}

}

Output:

Enter player 1's jersey number:
1
Enter player 1's rating:
2

Enter player 2's jersey number:
3
Enter player 2's rating:
4

Enter player 3's jersey number:
5
Enter player 3's rating:
6

Enter player 4's jersey number:
7
Enter player 4's rating:
8

Enter player 5's jersey number:
9
Enter player 5's rating:
5

------MENU-----
u -Update player rating
a -Output players above a rating
r -Replace player
o -Output roster
q -Quit
o
ROSTER
Player 1--Jersey number : 1, Rating : 2
Player 2--Jersey number : 3, Rating : 4
Player 3--Jersey number : 5, Rating : 6
Player 4--Jersey number : 7, Rating : 8
Player 5--Jersey number : 9, Rating : 5

------MENU-----
u -Update player rating
a -Output players above a rating
r -Replace player
o -Output roster
q -Quit
a
Enter a rating:
2
ABOVE 2
Player 2--Jersey number : 3, Rating : 4
Player 3--Jersey number : 5, Rating : 6
Player 4--Jersey number : 7, Rating : 8
Player 5--Jersey number : 9, Rating : 5

------MENU-----
u -Update player rating
a -Output players above a rating
r -Replace player
o -Output roster
q -Quit
r
Enter a jersey number:
3
Enter a new jersey number:
54
Enter a new rating for player:
85

------MENU-----
u -Update player rating
a -Output players above a rating
r -Replace player
o -Output roster
q -Quit
o
ROSTER
Player 1--Jersey number : 1, Rating : 2
Player 2--Jersey number : 54, Rating : 85
Player 3--Jersey number : 5, Rating : 6
Player 4--Jersey number : 7, Rating : 8
Player 5--Jersey number : 9, Rating : 5

------MENU-----
u -Update player rating
a -Output players above a rating
r -Replace player
o -Output roster
q -Quit
u
Enter a jersey number:
5
Enter a new rating for player:
85

------MENU-----
u -Update player rating
a -Output players above a rating
r -Replace player
o -Output roster
q -Quit
o
ROSTER
Player 1--Jersey number : 1, Rating : 2
Player 2--Jersey number : 54, Rating : 85
Player 3--Jersey number : 5, Rating : 85
Player 4--Jersey number : 7, Rating : 8
Player 5--Jersey number : 9, Rating : 5

------MENU-----
u -Update player rating
a -Output players above a rating
r -Replace player
o -Output roster
q -Quit
q