COMP1010 'C' Programming

Basic Information

SchoolDept- Electronics & Computer Science
Session and SemesterSemester One, 2009 - 2010
Credit10 Credit Points
Unit LeaderEric Cooke
TeachersDr Matthew Swabey
Prof Steve R Gunn
StudyAssignment 25 hours, Reading 30 hours
Assessment100% Laboratory Work
Coursework10 laboratory exercises
TeachingLectures 24

Description

Aims

To provide the student with the necessary skills to write programs using the C programming language

Learning Outcomes

Knowledge and Understanding

Having successfully completed the module, you will be able to demonstrate knowledge and understanding of:

  • how to write and debug programs using an IDE
  • The principles of designing structured programs
  • when and how to use the appropriate statements available in the C language
  • The reasons for keeping a logbook of work done

Intellectual Skills

Having successfully completed the module, you will be able to:

  • explain the principles of structured program design
  • describe what is meant by a well designed program
  • describe when and how to use the stand C statement
  • The reasons for keeping a logbook of work done

Practical Skills

Having successfully completed the module, you will be able to:

  • Write, Compile and Debug basic C programs using an IDE and using a workstation
  • Write basic C programs using
    • Selection statements,
    • Repetitive statements,
    • Functions,
    • Pointers,
    • Arrays,
    • Strings

General Transferable (key) Skills

Having successfully completed the module, you will be able to:

  • Model problems
  • plan your work, maintain a log book and keep to deadlines
  • demonstrate a range of basic C & IT skills, including use of the Web to locate study materials

Topics Covered

  • Initial concepts
    • Producing an executable program (compiling and linking)
    • Constants, variables, Data types
    • Operators and precedence
    • Data type conversion
  • Input/Output
  • Selection statements
    • if .. else
    • switch
  • Repetitive statements
    • for
    • while()
    • do .. while()
    • break and continue
  • Functions
  • Pointers
  • Arrays
  • Strings
  • Further issues
    • structures
    • file input/output

Teaching and learning activities

Teaching methods include

Lectures: Two per week during the teaching weeks in semester 1. These are used introduce the concepts of structured programming. These lectures will also describe some of the practical aspect of C programming.

Laboratories: There are 10 compulsory three hour laboratory sessions to allow you to practice and consolidate the material covered in the lectures. The laboratories are supervised by a tutor. Postgraduate student are there to help and will mark the student�s logbook during or at the end of each laboratory exercise.

Learning activities include

During the lectures there may be quizzes and discussion group with a plenary feedback. Participation, while not compulsory, is encouraged.

At the end of each teaching week, you will be given directive reading from the recommended text. This a guide to the minimum amount of reading expected during you private study time, this will also help you prepare for laboratories.

Programming is a skill that takes practice. While laboratories are the main learning activities, students are expected to practice programming during their private study.

In addition to the recommended texts, the website contains links to a number of other activities and information resources that you may find useful during your private study time.

Methods of assessment

Assessment methodNumber% contribution to final mark
Laboratories [labs]10100

Feedback and student support during module study

  • Postgraduate students will assist you with your programming laboratories
  • Logbooks of laboratory and resulting program will be marked by your Postgraduate students during the laboratory.
  • There are various buzz groups and quizzes during lectures.
  • There are various further resources with programming exercises on the course web site

Relationship between the teaching, learning and assessment methods and the planned learning outcomes

The knowledge, understanding and intellectual skills listed will be taught in lectures. You will re-enforce your learning of these skills, and supplement them with the practical skills in the lab sessions. Laboratory sessions will also allow you to demonstrate the transferable skills.

Resources

Core Resources

  • C Program Design for Engineers 2nd edition Jeri R. Hanly, Elliot B. Koffman Addison Wesley Longman Publishing Co [Library] [Shops]

Background Resources

  • The C Programming Language 2nd EditionBrian W. Kernighan, Dennis M. Ritchie Prentice Hall 1998 [Library] [Shops]
  • D Hanselman & Bruce Littlefield, The Student Edition of MATLAB, Version 5, 1997, Prentice Hall, Upper Saddle River, NJ. This book is not available in the library and is no longer in print (Nov 2006).
  • Dan Gookin, C for Dummies, IDG Books, 1997 [Library] [Shops]

Notes

CM165

All students taking CM165 will be required to submit a set programming coursework.

Compiler, tools etc

Compiler, tools and associated documents provided on CD

Online Course Notes

http://www.ecs.soton.ac.uk/notes/cm161/

 

ECS Community Online

Photo: Student blogs
'I’ll be doing an MSc at Carnegie Mellon’s campus in Silicon Valley …'
News
Research, people, and events.
data.gov.uk
Nigel Shadbolt and Tim Berners-Lee talk about freeing up public data
Photo: Researcher Profiles
Academic profiles
Digital Revolution
We are part of BBC Virtual Revolution
Research Publications

Contact us

UG Admissions Telephone
023 8059 2969

UG Admissions Email
ucas@ecs.soton.ac.uk

Undergraduate ProspectusUCAS Visit Days