C语言代写 C语言代做 C程序代写 C程序作业代写

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. 

京ICP备2025144562号-1
微信
程序代写,编程代写
使用微信扫一扫关注
在线客服
欢迎在线资讯
联系时间: 全天