|Owning Department/School:||Department of Electronic & Electrical Engineering|
|Level:||Intermediate (FHEQ level 5)|
|Assessment:||CW 20%, EX 80%|
EE20084F - Reassessment Examination (where allowed by programme regulations)|
|Requisites:||Before taking this unit you must take EE10134 or equivalent.|
To introduce students to the ANSI C programming language. To develop their skills in writing good quality software using the C programming language. To provide an appreciation of the importance of good software structure and documentation. To enable students to gain practical experience with programming and its interaction with the operating system environment.
After successfully completing the unit, students will be able to: (i) design, implement, test and debug C language functions and programs according to a given specification, (ii) to locate and correct semantic and syntactic errors in a given C language program, (iii) to explain various aspects of the C languages such as scope or type conversion rules and so on, (iv) to write well-structured software documented with appropriate comments, (v) to understand the basic concepts of an operating system operation system from the programming perspective.
Writing and documentation of structured computer programs. Problem Solving. Taught, facilitated and assessed.
Fundamentals: identifiers, keywords, fundamental data types, constants, variables, arrays, declarations, operators, expressions and statements. Conditional and looping controls. Functions: defining, accessing and passing arguments to functions. Prototypes. Modular programming. Use of the C standard library functions for data input/output. Arrays: defining, processing and passing arrays to functions. Multidimensional arrays. Strings and string processing. Pointers: declaring and passing pointers to functions. Relationship between pointers and arrays. Dynamic memory allocation. Structures: defining and accessing structures. Self-referential structures. User defined data types. Unions. Bit fields. C pre-processor directives. Data structures: stacks, queues. Linked lists and trees. Operating Systems: event driven programming.
EE20084 is Compulsory on the following programmes:Department of Electronic & Electrical Engineering