Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Swinburne x Lab Test - SPX Session 12.1 - Bb Collaborat-X /29726/assignments/316599 The Problem description Students' grade details in a semester are formatted as shown
Swinburne x Lab Test - SPX Session 12.1 - Bb Collaborat-X /29726/assignments/316599 The Problem description Students' grade details in a semester are formatted as shown below. The data for each student contains name of the student, studeni Id, ha me of course, number of units and marks for these units. Each student is doing a different number of units in that semester, the maximum number of units that a student can do is limited to 5. A small segment of Dhe grade book data might look like the following. Zen 1101825 Computer 4 88 98 52 95 Peter 112152 Electrical 3 67 98 59 Mary 1201925 w Lab Te t-SPX urses/29726/assignments/316599 Use the following self-referential structure for this problem. estruct person_tag char name [20]; char id[20]; }; estruct course_tag{ char course name [20]; int no of units; int marks [!]; float avg: Estruct student_tag struct person_tag student info; struct course_tag course info; struet student tag *next; Create a linked list using the above self-referential structure for this problem. The contents of the gradebook is read into the data part of each node and these nodes are connected to create a linked list. Must use the linked list for all options listed below. Display the menu for the user using a menu function. The options displayed should be: (1) Display students' details (2) Search for a student's details (3) Find the details of the student with the largest average (2) Search for a student s details (3) Find the details of the student with the largest average (4) Find the details of the students who received a mark of less than 50 F subject (received a fail for at least 1 unit) (-1) Quit program Use the following functions in addition to main (2 marks): 1. A read_details//function 1 (2 marks) - read details of students from user. Calculation of average mark and assignment of average to avg elen the structure can be done in this read details itself (you are free to write separate function for this purpose). 2. A menu //function 2 (1 mark) - displays menu on screen 3. A display_list//function 3 (2 marks) - displays contents of the linkedlist 4. A search_student//function 4 (2 marks) - search for a student and prints the details on the screen, if no such student in grade book report it back to the user. 5. A largest_average//function 5 (3 marks) - finds the student with the largest average and prints the details of the student on screen 6. A find_failed students//function 5 (4 marks) - finds the students who receive a fail grade (student with a mark less than 50) for at least one unit. Marks will be deducted if separate functions are not implemented to do these actions. You can use function prototypes of your own choice. Sufficient number of screenshots provided to show all correct functionalities (2 w Swinburne x Lab Test - SPX Session 12.1 - Bb Collaborat-X /29726/assignments/316599 The Problem description Students' grade details in a semester are formatted as shown below. The data for each student contains name of the student, studeni Id, ha me of course, number of units and marks for these units. Each student is doing a different number of units in that semester, the maximum number of units that a student can do is limited to 5. A small segment of Dhe grade book data might look like the following. Zen 1101825 Computer 4 88 98 52 95 Peter 112152 Electrical 3 67 98 59 Mary 1201925 w Lab Te t-SPX urses/29726/assignments/316599 Use the following self-referential structure for this problem. estruct person_tag char name [20]; char id[20]; }; estruct course_tag{ char course name [20]; int no of units; int marks [!]; float avg: Estruct student_tag struct person_tag student info; struct course_tag course info; struet student tag *next; Create a linked list using the above self-referential structure for this problem. The contents of the gradebook is read into the data part of each node and these nodes are connected to create a linked list. Must use the linked list for all options listed below. Display the menu for the user using a menu function. The options displayed should be: (1) Display students' details (2) Search for a student's details (3) Find the details of the student with the largest average (2) Search for a student s details (3) Find the details of the student with the largest average (4) Find the details of the students who received a mark of less than 50 F subject (received a fail for at least 1 unit) (-1) Quit program Use the following functions in addition to main (2 marks): 1. A read_details//function 1 (2 marks) - read details of students from user. Calculation of average mark and assignment of average to avg elen the structure can be done in this read details itself (you are free to write separate function for this purpose). 2. A menu //function 2 (1 mark) - displays menu on screen 3. A display_list//function 3 (2 marks) - displays contents of the linkedlist 4. A search_student//function 4 (2 marks) - search for a student and prints the details on the screen, if no such student in grade book report it back to the user. 5. A largest_average//function 5 (3 marks) - finds the student with the largest average and prints the details of the student on screen 6. A find_failed students//function 5 (4 marks) - finds the students who receive a fail grade (student with a mark less than 50) for at least one unit. Marks will be deducted if separate functions are not implemented to do these actions. You can use function prototypes of your own choice. Sufficient number of screenshots provided to show all correct functionalities (2 w
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started