In: Computer Science
please fix code
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// function declarations
int getValidJerseyNumber();
int getValidRating();
int main()
{
// declaring variables
int size = 5;
int jerseyNo[size];
int rating[size];
int i = 0, jno, rate;
char option;
/* Getting the inputs entered by the user
* and populate the values into arrays
*/
for (i = 0; i < size; i++)
{
printf("Enter player %d's jersey number:", i + 1);
jerseyNo[i] = getValidJerseyNumber();
printf("Enter player %d's rating:\n", i + 1);
rating[i] = getValidRating();
}
/* This while loop continues to execute
* until the user enters a valid option or 'q/Q'
*/
while (1)
{
// displaying the menu
printf("\nMENU\n");
printf("u - Update player rating\n");
printf("a - Output players above a rating\n");
printf("r - Replace player\n");
printf("o - Output roster\n");
printf("q - Quit\n");
// getting the choice entered by the user
printf("Choose an option:");
scanf("%c", &option);
// Based on the user choice the corresponding case will be
executed
switch (option)
{
case 'u':
case 'U':
{
int flag = 0;
printf("Enter a jersey number:");
jno = getValidJerseyNumber();
printf("Enter a new rating for player\n");
rate = getValidRating();
for (i = 0; i < size; i++)
{
if (jerseyNo[i] == jno)
{
rating[i] = rate;
flag = 1;
}
}
if (flag == 0)
{
printf("** Player not found **\n");
}
continue;
}
case 'a':
case 'A':
{
printf("Enter a rating \n");
rate = getValidRating();
printf("Above%d\n", rate);
for (i = 0; i < size; i++)
{
if (rating[i] > rate)
printf("Player %d -- Jersey Number:%d. Rating:%d\n", i + 1,
jerseyNo[i],
rating[i]);
}
continue;
}
case 'R':
case 'r':
{
int flag = 0, newjNo;
printf("Enter a jersey number:");
jno = getValidJerseyNumber();
for (i = 0; i < size; i++)
{
if (jerseyNo[i] == jno)
{
printf("Enter a new jersey number:\n");
newjNo = getValidJerseyNumber();
jerseyNo[i] = newjNo;
printf("Enter a rating for the new player:");
rate = getValidRating();
rating[i] = rate;
}
}
continue;
}
case 'o':
case 'O':
{
printf("\nROSTER\n");
for (i = 0; i < size; i++)
{
printf("Player %d -- Jersey Number:%d. Rating:%d\n", i + 1,
jerseyNo[i],
rating[i]);
}
continue;
}
case 'Q':
case 'q':
{
break;
}
default:
{
printf("** Invalid Option **\n");
continue;
}
}
break;
}
return 0;
}
// This function will get the valid jersey number from the
user
int getValidJerseyNumber()
{
int jerseyNum;
while (1)
{
scanf("%d", &jerseyNum);
if (jerseyNum < 0 || jerseyNum > 99)
{
printf("Invalid must be between 0-99\n");
printf("Re-Enter:\n");
continue;
}
else
{
break;
}
}
return jerseyNum;
}
// This function will get the valid rating from the user
int getValidRating()
{
int rate;
while (1)
{
scanf("%d", &rate);
if (rate < 1 || rate > 9)
{
printf("Invalid must be between 1-9\n");
printf("Re-Enter:\n");
continue;
}
else
{
break;
}
}
return rate;
}
-------------------------------------------------------------
This program will store roster and rating information for a soccer team. Coaches rate players during tryouts to ensure a balanced team.
(1) Prompt the user to input five pairs of numbers: A player's
jersey number (0 - 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 arrays (i.e., output the roster). (3 pts)
Ex:
Enter player 1's jersey number: 84 Enter player 1's rating: 7 Enter player 2's jersey number: 23 Enter player 2's rating: 4 Enter player 3's jersey number: 4 Enter player 3's rating: 5 Enter player 4's jersey number: 30 Enter player 4's rating: 2 Enter player 5's jersey number: 66 Enter player 5's rating: 9 ROSTER Player 1 -- Jersey number: 84, Rating: 7 Player 2 -- Jersey number: 23, Rating: 4 ...
(2) Implement a menu of options for a user to modify the roster.
Each option is represented by a single character. The program
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:
MENU u - Update player rating a - Output players above a rating r - Replace player o - Output roster q - Quit Choose an option:
(3) Implement the "Output roster" menu option. (1 pt)
Ex:
ROSTER Player 1 -- Jersey number: 84, Rating: 7 Player 2 -- Jersey number: 23, Rating: 4 ...
(4) Implement the "Update player rating" menu option. Prompt the
user for a player's jersey number. Prompt again for a new rating
for the player, and then change that player's rating. (1 pt)
Ex:
Enter a jersey number: 23 Enter a new rating for player: 6
(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: 5 ABOVE 5 Player 1 -- Jersey number: 84, Rating: 7 ...
(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: 4 Enter a new jersey number: 12 Enter a rating for the new player: 8
PLEASE GIVE IT A THUMBS UP, I SERIOUSLY NEED ONE, IF YOU
NEED ANY MODIFICATION THEN LET ME KNOW, I WILL DO IT FOR YOU
PLACE AN EXTRA SPACE WHILE SCANNING FOR INPUT, AS THIS, WILL
TERMINATE THE EXISTING SCANNING AND ALLOWS YOU TO ENTER, DUE TO
THIS THE MENU ISSUE WAS HAPPENING
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// function declarations
int getValidJerseyNumber();
int getValidRating();
int main()
{
// declaring variables
int size = 5;
int jerseyNo[size];
int rating[size];
int i = 0, jno, rate;
char option;
/* Getting the inputs entered by the user
* and populate the values into arrays
*/
for (i = 0; i < size; i++)
{
printf("Enter player %d's jersey number:", i + 1);
jerseyNo[i] = getValidJerseyNumber();
printf("Enter player %d's rating:\n", i + 1);
rating[i] = getValidRating();
}
char c;
/* This while loop continues to execute
* until the user enters a valid option or 'q/Q'
*/
while (1)
{
// displaying the menu
printf("\nMENU\n");
printf("u - Update player rating\n");
printf("a - Output players above a rating\n");
printf("r - Replace player\n");
printf("o - Output roster\n");
printf("q - Quit\n");
// getting the choice entered by the user
printf("Choose an option:");
scanf(" %c", &option);
// Based on the user choice the corresponding case will be executed
switch (option)
{
case 'u':
case 'U':
{
int flag = 0;
printf("Enter a jersey number:");
jno = getValidJerseyNumber();
printf("Enter a new rating for player\n");
rate = getValidRating();
for (i = 0; i < size; i++)
{
if (jerseyNo[i] == jno)
{
rating[i] = rate;
flag = 1;
}
}
if (flag == 0)
{
printf("** Player not found **\n");
}
continue;
}
case 'a':
case 'A':
{
printf("Enter a rating \n");
rate = getValidRating();
printf("Above%d\n", rate);
for (i = 0; i < size; i++)
{
if (rating[i] > rate)
printf("Player %d -- Jersey Number:%d. Rating:%d\n", i + 1, jerseyNo[i],
rating[i]);
}
continue;
}
case 'R':
case 'r':
{
int flag = 0, newjNo;
printf("Enter a jersey number:");
jno = getValidJerseyNumber();
for (i = 0; i < size; i++)
{
if (jerseyNo[i] == jno)
{
printf("Enter a new jersey number:\n");
newjNo = getValidJerseyNumber();
jerseyNo[i] = newjNo;
printf("Enter a rating for the new player:");
rate = getValidRating();
rating[i] = rate;
}
}
continue;
}
case 'o':
case 'O':
{
printf("\nROSTER\n");
for (i = 0; i < size; i++)
{
printf("Player %d -- Jersey Number:%d. Rating:%d\n", i + 1, jerseyNo[i],
rating[i]);
}
continue;
}
case 'Q':
case 'q':
{
break;
}
default:
{
printf("** Invalid Option **\n");
continue;
}
}
break;
}
return 0;
}
// This function will get the valid jersey number from the user
int getValidJerseyNumber()
{
int jerseyNum;
while (1)
{
scanf("%d", &jerseyNum);
if (jerseyNum < 0 || jerseyNum > 99)
{
printf("Invalid must be between 0-99\n");
printf("Re-Enter:\n");
continue;
}
else
{
break;
}
}
return jerseyNum;
}
// This function will get the valid rating from the user
int getValidRating()
{
int rate;
while (1)
{
scanf("%d", &rate);
if (rate < 1 || rate > 9)
{
printf("Invalid must be between 1-9\n");
printf("Re-Enter:\n");
continue;
}
else
{
break;
}
}
return rate;
}