Skip to content
Physics and Astronomy
Home Our Teaching Resources C programming project.html
Back to top

PHY2027 project

Before starting you should look at our expectations page and the module's policy on copying and acceptable and unacceptable collaboration in assessments, which in turn refer to the Physics policy on cheating and plagiarism.

Choice of project

Other than with the permission of the module leader students must choose one of the eight project choices.

NB: if you have been in the habit of working quite closely with another student then you should choose different projects.

Individual choice of project

Confident students who have scored an average of at least 70% on the first assessment and CA test may apply to the module leader to choose their own project.

Due date

The due date is the last day of term, i.e. the end of week 12. We will normally provide extra, optional lab classes during week 12.

Course mark and breakdown

The project comprises 30% of the total course mark. The mark is nominally split into two sections, although the markers are allowed some flexibilty.

General use of the C language: 35%

A program that properly uses all of the features of the C language required for the CA test plus a dynamically-allocated structure can expect to be awarded 35% of the marks. Particular emphasis will be placed on the higher-level features of the language (functions and structures).

Use of the more-advanced low-level skills such as bitwise operators, switch(), unformatted input etc. will also be advantageous.

Arrays and structures

The CA test guidelines expected you to be able to pass (the address of) an array to a function. In your program it is quite likely that it is more natural to pass a pointer to a structure instead, in which case it will be be considered to cover both features of the language.

Advice on incorporating structures into your code

Occasionally a problem may be able to have its data expressed without the use of a structure. In this case simply add a text description and/or ask for the name of the person running the program and incorporate this information plus the original data into a structure.

Scope and difficulty of project: 65%

The remaining 65% is assigned to the scope and difficulty of project. In general a student submitting an ambitious project involving the confident use of structures and high-level programming skills should not worry too much whether s/he has used all of the low-level "CA-test" skills and attempt to artificially introduce them.

Science-based is a bonus

Although the project may be on any subject (but see above section on choice of project), a science-related project will receive extra consideration, in keeping with the subject of the module: "Scientific programming in C".

Incrementally adding scope and features

In general we advise you to start with an inner kernel of a program that you are confident you can achieve and to then add extra features as time allows. This allows you to improve your mark whilst avoiding the danger of a high-risk "all or nothing" approach. Examples include:

  • Going from a single structure to an array, or linked list, of structures to handle several items at one time.
  • Storing the results in a file.
  • Having a collection of previous results to view.
  • Saving summary or high-score information.
  • For step-wise calculations and games, being able to save the state of the calculation or game and resume it later.

Intermediate "snap-shot" hand-ins

We reserve the right to request "snap-shot" hand-ins at short notice as a record of progress and to guard against plagiarism.


Validate   Link-check © Copyright & disclaimer Privacy & cookies Share
Back to top