C语言基础编程代做, C语言基础程序代写, C语言基础作业代写, C语言基础编程代写
COMP1711 Semester 1 2021/22
Coursework 3 Description
This work awards a maximum of 40 marks and is worth 40% of the final module grade.
Deadline
To be submitted before 10:00am on Tuesday 18th January 2022.
Late penalties are 5% per day for every day, or part day, past the deadline.
Skills tested
This coursework will test your ability to write a C application that correctly uses:
Command line arguments
File input
Structures
Pointers
Functions
as well as: variables, expressions, assignment, and conditional logic.
You may need to review these learning units and lectures before starting the work.
Description
You will write a program that manages a small library of books. As a user you can borrow and
return books. As a librarian you can oversee the whole collection of books.
The program runs from a menu system that is already implemented.
Details
A zip file is available for download on Minerva.
This will uncompress to a folder containing the source code.
The basic structure of the code is provided. You have to implement the body of several
functions (labelled ‘TO DO:’ in the code). The code, as is, will compile and run but will simply
print messages, without any effect.
The application starts in the main() function in main.c and you can trace the code behaviour
from there.
You should make sure you understand the code structure and the data structures that are
defined.
The program specification
You are provided with a skeleton code as a starting point.
This code is modular and split across several source code and header files.
A Makefile is provided that compiles the whole application.To build the application on linux type ‘make’ on the command line in the source code folder.
If you are using another platform or development environment (IDE) you will need to ensure you
can create a single executable application from the code provided. (eg. you can create a C
Project in CodeBlocks and add all the C source and header files).
On linux, this will compile the executable into a sub-folder ‘bin’, which also contains a plain text
file of book data. If you execute the code it will work as-is.
You can run the code and it will print simple messages, but with no real functionality.
You can add any further functions you require to complete the code. It is possible to complete
this work without any extra functions. You should consider where to add them and how they
interact with the code as a whole.
Guidelines
The code will be tested on Gradescope.
You must submit a zip file of the folder containing all your source code (.c and .h).
Write the code in standard C. It must compile with gcc on school linux machines,
i.e. gcc –std=c99, using the Makefile provided.
If you add extra input or output for debugging, beyond what is required for the specified
functions, please remove it before submission.
Precise statements are given for output – please use them as-is or the grading will fail.
Only add code in the indicated sections, this is to ensure the autograder runs.
Please add your name and student details at the top of the main.c file as comments.
This is intended as an individual piece of work. Please note the guidance on academic
integrity.
Marking
The user interface works correctly
(4 marks)
Function main()
(2 marks)
Function initLibrary()
(4 marks)
Function readBooks()
(4 marks)
Function exitLibrary()
(2 marks)
Function listBooks()
(2 marks)
Function listBorrowedBooks()
(3 marks)
Function listAvailableBooks()
(3 marks)
Function listMyBooks()
(4 marks)
Function borrowBook()
(6 marks)
Function returnBook()
(6 marks)
40 marks total.
A partial Gradescope marker will be released nearer the deadline that you can use to check
some of the required functionality.
This final grading will consider all aspects as above.
