DescriptionWrite a C program in Linux that will read from an input ﬁle a sequence of student records, willsort them, and will print the sorted records into an output ﬁle. The input ﬁle will be a text ﬁlecontaining information about one student per line. Each line will include the following informationin the following format:StudentID Firstname Lastname Department GPAYou can assume each of the above information (Firstname, Department, etc.) will be a singleword. Assume StudentID is a 7 digit number between (and including) 1000000 and 9999999. AssumeGPA is a ﬂoating point number between (and including) 0 and 4. There can be one or more space orTAB characters between the ﬁelds. If you use the fscanf() function, then this will not matter andyou will be able to read the ﬁelds of a line easily into your variables. Note that Firstname, Lastname,and Department can be any length, therefore make sure you do not make any assumption about theirlengths and create the memory required to hold them dynamically (Tip: the m modiﬁer of fscanf()might be handy here).Your program will read the information from the input ﬁle and will build a linked list where eachitem (entry) of the list will contain information about one student. Hence each item of the linked listwill be a structure having ﬁelds to store information about a student (in C we do not have class, wehave struct). You can build the list as a doubly linked list. In this case, each item in the list willhave also a pointer to the next item and a pointer to the previous item.After building the list, your program will sort the list using the insertion sort algorithm (Tip: Youcan build the list in the sorted order as well.). Sorting will be done based on the StudentID ﬁeld.Then your program will write the list of items into an output text ﬁle. Each line of the output ﬁle willcontain information about one student in the following format:StudentID,Firstname,Lastname,Department,GPANote the comma (instead of space or TAB characters) between ﬁelds. The output should containno spaces or TABs, and no empty lines. So, after you write the last line of information, you shouldclose the ﬁle. And this should be the end of your program. It is very important that you produce theoutput in this format since we will use this format in our automated tests.DevelopmentIt is a requirement that you have to use linked list data structure and insertion sort algorithm. In thisway, you will be able to practice with pointers and structures.The name of your executable ﬁle has to be unisort. A sample invocation of your program canbe like the following:unisort in.txt out.txtHere, in.txt is the input text ﬁle, and out.txt is the output text ﬁle. It is very important thatyou follow the speciﬁcations.Example 1 An example input ﬁle (for example, in.txt) can be like the following:2040003 AAAA BBBBBBBBB ComputerScience 3.452040002 AAA CCC ElectricalEngineering 3.012040005 AAAAAAAAAAAAAAAAA BBB ComputerScience 3.60Then the output ﬁle (for example, out.txt) will be the following:2040002,AAA,CCC,ElectricalEngineering,3.012040003,AAAA,BBBBBBBBB,ComputerScience,3.452040005,AAAAAAAAAAAAAAAAA,BBB,ComputerScience,3.60
Why Choose Us
- 100% non-plagiarized Papers
- 24/7 /365 Service Available
- Affordable Prices
- Any Paper, Urgency, and Subject
- Will complete your papers in 6 hours
- On-time Delivery
- Money-back and Privacy guarantees
- Unlimited Amendments upon request
- Satisfaction guarantee
How it Works
- Click on the “Place Order” tab at the top menu or “Order Now” icon at the bottom and a new page will appear with an order form to be filled.
- Fill in your paper’s requirements in the "PAPER DETAILS" section.
- Fill in your paper’s academic level, deadline, and the required number of pages from the drop-down menus.
- Click “CREATE ACCOUNT & SIGN IN” to enter your registration details and get an account with us for record-keeping and then, click on “PROCEED TO CHECKOUT” at the bottom of the page.
- From there, the payment sections will show, follow the guided payment process and your order will be available for our writing team to work on it.