Highlights
Section A
Question 1.
Students’ grade details in a semester are kept in a text file. The data for each student contains name of the student, student Id, name 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 4. A small segment of the grade book data might look like the following.
You have to create a LinkedList using the above self-referential structure and read the contents of the text file into LinkedList. Each node of the LinkedList contains details of one student. Implement all functionalities mentioned below:
The main()function handles all interactions with the user and other functions:
• It displays an appropriate welcome message introducing the program.
• Calls a function named read_file()which opens a text file students.txt(a sample text file is shown above) for reading and storing all of the students details from the file to a LinkedList in order of name (insertion should happen in alphabetical order). The students.txt contains name of student (name), student id (id), course name (course_name), number of units (no_of_units), marks for these units (marks[4]). Maximum number of units limited to 4. Calculation of average mark and assignment of average to avg element of the structure can be done in this read_file itself (you are free to write a separate function for this purpose).
• It then repeatedly calls the menu()function to display user options, get the user selection returned by the menu() function, use a switch (or if ..else if) statement to process user request by calling appropriate function(s).
• It displays the result with an appropriate message after processing user request.
• It displays a goodbye message when the user selects the Quit option from the menu and terminates the program.
The menu()function has no parameters. When called, it displays a menu of 6 options allowing the user to select one and returns this option to the calling main()function. The options displayed should be: (1) Display students’ details (2) Search for a student’s mark (3) Find the details of student with the largest average (4) Find the details of failed students (5) Add new student to the record (6) Quit program
• Option (1) will use a function called display_students()called from the main()to display the contents of the LinkedList on the screen in an appropriate format.
• Option (2) will use a function called search_student()which is designed to search for a student. Display all the details of that student, if no such student is found report it back to the user.
• Option (3) will use a function called find_maximum()which is designed to find the details of student having the largest average marks in the LinkedList. Display all the details of that student.
• Option (4) will use a function called find_failed()which is to find the students who received a fail grade (student with a mark less than 50) for at least one unit. Display all the details of these students.
This COS10007: IT Assignment has been solved by our IT Experts at My Uni Paper. Our Assignment Writing Experts are efficient to provide a fresh solution to this question. We are serving more than 10000+ Students in Australia, UK & US by helping them to score HD in their academics. Our Experts are well trained to follow all marking rubrics & referencing style.
Be it a used or new solution, the quality of the work submitted by our assignment experts remains unhampered. You may continue to expect the same or even better quality with the used and new assignment solution files respectively. There’s one thing to be noticed that you could choose one between the two and acquire an HD either way. You could choose a new assignment solution file to get yourself an exclusive, plagiarism (with free Turnitin file), expert quality assignment or order an old solution file that was considered worthy of the highest distinction.
© Copyright 2026 My Uni Papers – Student Hustle Made Hassle Free. All rights reserved.