C Programming Course –-- Course Notes
Before Starting the Course
Before the first practical class it is important that you
register to use the campus' unix facility (also known as tower).You can do this on the web using
The electronic info desk selecting registration and then
pressing REGISTER for TOW (tower) the central unix service.
It is strongly recommended that you purchase the course text
"The C programming Language (Second Edition)" by Kernighan and
Ritchie. This is the classic volume on
the C language by the programmers who designed the language in the first place.
Course Work
For the first four weeks of the course you will be expected
to complete some set course work. In
addition to counting for 10% of your final mark for this course, this course
work will be used to assess your ability for the final project. If you have not completed the course work
satisfactorily then you will be given an easier final project which will be
worth less marks. The course work
relies on material learned in practical classes and lectures. If you miss a practical class or a lecture
it is therefore important that you pick up the appropriate worksheet or lecture
notes from the maths department office and work through it.
The course work will take the form of three programming
questions. Two of these questions must
be completed by every student and are worth 70% if both are completed
absolutely correctly. A third question
is for students who want to earn extra credit and is more challenging than the other
two questions.It is worth the other
30% of the marks.
Programs should be handed in on disk or (preferably) by
email to richard@manor.york.ac.uk. To
send a program by email using PINE from tower (the central unix machine).
1) Start pine by typing pine then press C to compose a message.
2) Enter the email address in the appopriate box –richard@manor.york.ac.uk
3) Type Ctrl-J to attach a file.
4) Enter the name of the file you wish to attach –
the source code of the program you are sending.
5) If you have entered the file name
correctly then press Ctrl-X to send the file.
Written work and print outs accompanying programs should be
handed in to the maths department office.
Work should be handed in/emailed by 5:00pm on the Monday after it was
set. Remember, even if you haven't got
your program to work, it is worth handing in non-functional code to show that
you have made an attempt and you will be given some credit for any work done.
Project
The majority of the marks for this course (90%) are for the
C programming project which will be begun in week 5 and which must be handed in
by mid-day on Friday of the last week of term.
You will be given a choice of several projects and be asked to give a
first and second preference as to which project you will have.
It is expected that you will visit the
course lecturer at least twice during the project to discuss your progress and
any problems which might have arisen. Students who have their own ideas for projects should discuss this well
before the projects begin.
Getting Extra Help
C programming is difficult, especially for the novice
programmers and it is expected that most students will need some help at some
point during the course. My office is
in Vanbrugh X block V/X130 and I can be reached by email at
richard@manor.york.ac.uk or by phone on 3088 to arrange appointments.
An "office hour" will be
established where students can turn up to get help with coursework.
Plagiarism
While it is acceptable to seek help from other students, it
is not acceptable to directly "copy" programs or to work together on
a program and both hand in the same thing.It is usually obvious to an experienced programmer when this has been
done. Feel free to ask people for
advice on debugging or on how to tackle a problem but do not copy their
code. This will be considered cheating
and penalised accordingly.