Registry
Module Specifications
Archived Version 2007 - 2008
| |||||||||||||||||||||||||||||||||
Module Aims | |||||||||||||||||||||||||||||||||
The aim of the module is to develop familiarity with basic concepts and techniques of software engineering in C. The notion of a programming language will be introduced, as well as compiling and debugging issues. A selection of simple C programs will be developed first and then more complex programming issues will be introduced along with more complex programs. | |||||||||||||||||||||||||||||||||
Learning Outcomes | |||||||||||||||||||||||||||||||||
On completion of this module, the student will be able to -demonstrate basic and more advanced programming skills (PO1, PO2) -apply good style in writing, improving, and modularizing programs using the C language (PO1, PO2, PO3, PO5, PO6) -make use of functions, arrays, structured data types and pointers (PO1) -solve quickly, creatively and efficiently complex problems (PO2, PO3) -write programs, test and debug them.(PO1, PO2, PO3) -apply programming techniques for building engineering applications (PO3, PO4, PO5) | |||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||
NOTE | |||||||||||||||||||||||||||||||||
Assume that a 5 credit module load represents approximately 75 hours' work, which includes all teaching, in-course assignments, laboratory work or other specialised training and an estimated private learning time associated with the module. | |||||||||||||||||||||||||||||||||
Indicative Syllabus | |||||||||||||||||||||||||||||||||
PART ONE Introduction to programming. A minimal C program. Translation. Execution. Translation time defects. Execution time defects. Basic programming concepts. Structure of a C source file (translation unit). Introduction to C syntax. Identifiers: Concept of identifiers. Identifier uniqueness. Syntax of identifiers in C programs. Reserved identifiers in C (keywords). Conventions and guidelines on identifier usage. Data: Concepts of data type, constants, and variables. Types int, double, char. Declaring variables. Data types for character strings, integer and rational numbers, logical values. Operators: Arithmetic, relational, logical, assignment. Expressions: Forming expressions. Introduction to I/O functions and I/O redirection. The C standard library. Sequential evaluation. Operator procedence and associativity; parentheses. Programs: Skeleton structure of a C program: the main function. Declarations and statements. Sequential, conditional, and iterative statement execution. The concept of flow of control. Types of statements: expression, if, if-else and switch statements. Compound statement. Iteration: the for and while statements. Development Cycle: Specification. Algorithm design. Coding. Compilation and linkage. Testing: selection of test cases. Exception handling. Debugging. PART TWO Functions. Functional Decomposition: Function definition and invocation. Parameters. Passing by value versus passing by reference. Variable scope. Arrays. Strings. Structures. Files. Pointers. Single and Double linked lists: add an item, delete, search. | |||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||
Indicative Reading List | |||||||||||||||||||||||||||||||||
Recommended & Reference Texts: 1) Harvey Deitel, Paul Deitel, "C How To Program", Fourth Edition, Prentice Hall, Pearson Education, 2003, ISBN 013122543X 2) Brian Kernighan, Dennis Ritchie, "C Programming Language", Second Edition, Prentice Hall, Pearson Education, 1998, ISBN 0131103628 3) Fischer, Eggert, Ross, Applied C: An introduction and more, McGraw-Hill, 2001 4) Hanly, Koffman and Horvath, C Program Design for Engineers, Addison-Wesley, 1995 5) Hanly and Koffman, Problem Solving and Program Design in C, Second Edition, Addison-Wesley, 1996 | |||||||||||||||||||||||||||||||||
Contribution to Programme:
The module’s contribution to the IEI Programme Areas and Programme Outcomes is characterised according to a five point scale where 4 indicates a very strong contribution and 0 indicates no significant or intended contribution.
thics & Responsibility:
An understanding of the need for high ethical standards in the practice of engineering, including the responsibilities of the engineering profession towards people and the environment | |||||||||||||||||||||||||||||||||
Programme or List of Programmes | |||||||||||||||||||||||||||||||||
BME | BEng Manufacturing Engineering &Business | ||||||||||||||||||||||||||||||||
BMED | B.Eng. in Biomedical Engineering | ||||||||||||||||||||||||||||||||
CAM | B.Eng. Mechanical & Manufacturing Eng | ||||||||||||||||||||||||||||||||
CECE | B.Eng. Common Entry (Electronic Eng) | ||||||||||||||||||||||||||||||||
DME | B.Eng. in Digital Media Engineering | ||||||||||||||||||||||||||||||||
EE | BEng in Electronic Engineering | ||||||||||||||||||||||||||||||||
FEE | Open Opportunities in Engin.Course -Ext | ||||||||||||||||||||||||||||||||
ICE | BEng Info and Communications Engineering | ||||||||||||||||||||||||||||||||
IFCCEE | Int Foundation Cert (Common Electronic) | ||||||||||||||||||||||||||||||||
IFCMME | Int Foundation Cert (Common Mechanical) | ||||||||||||||||||||||||||||||||
ME | B.Eng. in Mechatronic Engineering | ||||||||||||||||||||||||||||||||
MEDM | B.Eng. in Medical Mechanical Engineering | ||||||||||||||||||||||||||||||||
MMEN | B.Eng. Common Entry (Mechanical Eng) | ||||||||||||||||||||||||||||||||
Archives: |
|