Está en la página 1de 8

Introduction to C Programming

Individual Assignment

Page 1 of 8

Learning Outcomes:

Design, implement, and document (appropriately) efficient algorithms for a C application


using a structured approach to programming.
Explain and apply the concept of a procedural programming paradigm and apply the
associated design principles to a range of problem solutions.
Illustrate the use of C as both an application and a systems programming language by
being able to design, implement, and document efficient algorithms for a C application.
Explain the structure, correct use of and implementation of appropriate advanced data
structures for a range of scenarios.

1.0INDIVIDUAL ASSIGNMENT DESCRIPTION


Depending on your programme stream please choose the relevant assignment question.
For IT students

Aircraft Seat Selection


1.
2.
3.
4.

Reserve seat
Cancel seat
Display seat layout
Exit system
Choice:__

The above menu offers options for seat selection in an aircraft. Each seat has a seat number and
if its reserved it should have the name of the passenger who reserved it. The passenger can only
cancel seats which have been reserved by him/her.
Reserve option allows a passenger to reserve an available seat. Cancel option allows the
passenger to cancel the reservation of his/her seat and can opt to reserve a new one. Display
shows all seats in the aircraft clearly identifying the ones available and the ones already reserved.
Exit option should help exit the system.
You can decide whether the user is given an option to choose seats or if the system automatically
allocates available seats. Use file storage to save the information and if possible to retrieve it each
time the system is restarted.

Level 1

Asia Pacific University of Technology and Innovation

2016

Introduction to C Programming

Individual Assignment

Page 2 of 8

For Engineering students


A good inventory management system helps in keeping track of stored items and highlights the
ones which go below the re-order level so that there is no delay in providing the items when
requisitions come from other departments.

INVENTORY MANAGEMENT SYSTEM

1. Purchase of existing items


2. Requisition from department
3. Display items below re-order level
4. Add a new item code
5. Exit system

Enter choice: ___

In the factory inventory store, as each item code is scanned (using RFID or other devices) for
delivery to different departments, your system should automatically deduct the quantity being
scanned so that at any given point the available quantity of an item can be determined. It should
also highlight any item which needs to be procured from sellers if the quantity goes below its reorder level each item has its own re-order quantity which is established at the onset.

Level 1

Asia Pacific University of Technology and Innovation

2016

Introduction to C Programming

Individual Assignment

Page 3 of 8

For Games and Multimedia students


Snakes and Ladders, is a game which most of us are familiar with. There should be 2 players
who take turns to roll the die and progress from the START to the FINISH position. Whoever
reaches the FINISH position first, is declared the winner. If you land on a ladder you can move
up and if you land on a snake you slip down.

Use file storage to save the information of the name of the winner and the date/time.

REQUIREMENTS
i.

You are required to carry out extra research for your system and document any logical
assumptions you made after the research.

ii.

Your program should use symbolic constants where appropriate. Validations need to be
included to ensure the accuracy of the system. State any assumptions that you make
under each function.

iii.

Your program must be modular, user-friendly using programming techniques that you
have learnt. You may include any extra features which you may feel relevant and that

Level 1

Asia Pacific University of Technology and Innovation

2016

Introduction to C Programming

Individual Assignment

Page 4 of 8

add value to the system. The menus could be modified in order to facilitate more
options.
iv.

There should be no need for graphics in your program, as what is being assessed, is your
programming skill not the interface design. The marking scheme for the assignment has
been provided so that you clearly know how the assessment for this assignment would
be done.

v.

You should include the good programming practice such as comments, variable
initialisation, naming conventions and indentation.

vi.

Students will be required to sit for a Test which will assess them on the work done in
their respective assignment. This is to check whether they fully understand the concepts
and logic used in their program. Students are allowed to refer to their assignment
documentation during the Test.

vii.

In a situation where the students,


- Failed to attempt the assignment demonstration, overall marks awarded for
the assignment will be adjusted to 50% of the overall existing marks

Level 1

Asia Pacific University of Technology and Innovation

2016

Introduction to C Programming

Individual Assignment

Page 5 of 8

2.0DELIVERABLES
You are required to submit:
i.

A softcopy of the program coded in C submitted in a CD. The program should


include the following:
- Basic C concepts such as displaying and reading of text, variables, and
assignment of values, comments to explain various parts of the program, etc.
- Intermediate C concepts such as control structures selection and iteration
control structures, use of arrays single / double scripted, string.
- Advanced C concepts such as functions programmer defined and library
functions, pointers, structures, unions, linked list and files.
- Any other features of C that has not been covered.

ii.

A documentation of the system, that incorporates basic documentation standards


such as header and footer, page numbering, Harvard referencing and which includes
- Cover page
- Table of contents
- Introduction
- Assumptions made in the system
- Design of the program using pseudocode and flowcharts which adheres to
the requirements provided above
- Explanation of C programming concepts applied with sample segment of source
code from the system created.
- Additional features which have been incorporated in the solution in terms of
design and C codes (sample segment of source code from the system created)
- Sample outputs when the program is executed with some explanation of the
outputs / sections of the program
- C source code
- Conclusion
- References Harvard Name Referencing
- Assignment marking scheme
- CSFF

iii.

CD Content
Documentation file (.doc file if using Ms-Word)
Program / Source files (.c files)
Header files (.h files) - optional
Executable file (.exe file) - optional

iv.

Binding and Submission

Level 1

Asia Pacific University of Technology and Innovation

2016

Introduction to C Programming

Individual Assignment

Page 6 of 8

- The documentation (attached with the CD) must be comb bound and submitted
to the Academic Administration on the due date latest by 7.00 p.m.

3.0ASSESSMENT CRITERIA
i.

Design solution (Flowchart and Pseudocode)


Detailed, logical and application of appropriate idea.

ii.

Coding / Implementation
30%
Appropriate application of C concepts (from basic to advance), good solution
implemented with validation and met all the requirements with additional features.

iii.

Documentation
Overall standard and layout, referencing (Harvard), screen capture and
assumptions.

15%

iv.

Test
Answered the questions posed based on the assignment submitted.

10%

v.

Demonstration
Know how to execute and able to trace the system

vi.

Level 1

20%

5%

Question and Answer


20%
Answered the questions based on the assignment submitted during presentation.

Asia Pacific University of Technology and Innovation

2016

Introduction to C Programming

Individual Assignment

Page 7 of 8

4.0PERFORMANCE CRITERIA
Distinction (75% and above)
This grade will be assigned to work which meets all of the requirements stated in the question. The
program runs smoothly when executed. There is clear evidence and application of C concepts up to
advanced level. The program solution is unique with excellent coding styles and validation. The
program implemented maps completely against the design (pseudo code and flowchart) as seen in
the documentation. The design of the solution varies in styles and has unique logic with hardly any
errors / omissions. The documentation does not have any missing components. Sample outputs
documented have clear explanation. All work is referenced according to Harvard Name
Referencing convention. Student must be able to provide excellent explanation of the codes and
work done, show additional concepts / new ideas used in the solution, able to answer all questions
posed with accurate / logical answers / explanation provided with sound arguments and clear
discussion. Overall an excellent piece of work submitted.
Credit (65%-74%)
This grade will be assigned to work which is considered to be of good standard and meets most of
the requirements stated in the question. The program runs smoothly when executed. There is clear
evidence and application of C concepts up to at least intermediate level. The program solution is
unique with good coding styles and validation. The program implemented maps well against the
design (pseudo code and flowchart) as seen in the documentation. The design of the solution varies
in styles and has unique logic with minor errors / omissions. The documentation does not have any
missing components. Sample outputs documented with some explanation. All work is referenced
according to Harvard Name Referencing convention but with some minor errors / omissions.
Student must be able to provide good explanation of the codes and work done, answer most
questions posed with mostly accurate / logical answers / explanation. Overall a good assignment
submitted.
Pass (50%-64%)
This grade will be assigned to work which meets at least half of the basic requirements
(approximately 50%) stated in the questions. The program runs smoothly when executed. There is
clear evidence and application of C concepts at basic level. The program solution is common with
basic coding styles and validation. The program implemented somewhat maps with the design
(pseudo code and flowchart) as seen in the documentation. The design of the solution is average in
terms of logic and style with some errors / omissions. The documentation has some missing
components. Sample outputs documented but without any explanation. Did some referencing but
not according to Harvard Name Referencing convention and with some minor errors / omissions.
Student must be able to explain some codes and work done and able to answer some questions
posed with some accurate / logical answers / explanation. Overall an average piece of work
submitted.

Level 1

Asia Pacific University of Technology and Innovation

2016

Introduction to C Programming

Individual Assignment

Page 8 of 8

Fail (Below 50%)


This grade will be assigned to work which achieved less than half of the requirements stated in the
question. The program is able to compile but not able to execute or with major error. The program
solution has only basic coding styles with no validation. The program solution has little or no
mapping with the design. The design of the solution has major / obvious errors / omissions. The
documentation has some missing essential components. No referencing. Student is barely able to
explain the codes / work done and answer given on the questions posed but with mostly inaccurate /
illogical answers / explanation. Overall a poor piece of work submitted.

Level 1

Asia Pacific University of Technology and Innovation

2016

También podría gustarte