TEACHING PLAN SCHOOL OF COMPUTER AND COMMUNICATION ENGINEERING COMPUTER PROGRAMMING EKT 120/4 SEMESTER 1 2014/2015 1.0 COURSE OUTCOMES (CO): CO1: Ability to define and describe programming concepts and principles. CO2: Ability to apply GNU/Linux for coding, compiling, executing and debugging computer programs. CO3: Ability to analyze and solve engineering related problems using computer programming techniques. CO4: Ability to evaluate programming techniques and tools to design computer programs. 2.0 COURSE IMPLEMENTATION: 2.1 Lecture: 2 hours per week for 13 weeks (Total = 26 hours) 2.2 Laboratory / Tutorial: 4 hours per week for 11 weeks (Total = 44 hours) 3.0 ASSESSMENT / WORK) EVALUATION CONTRIBUTION: (40% FINAL EXAM Final Examination 40% Theoretical Tests (2) 20% (10% Test1 and 10% Test2) AND 60% COURSE Laboratory Assignments (4) 30% (Asgn1=6%, Asgn2=6%, Asgn3=8% and Asgn4=10%) Laboratory Test 10% TOTAL 100% 1 4.0 REFERENCES: 4.1 Deitel and Deitel, Sudin, S., Ahmad, R.B. and Yacob, Y., “C How To Program”, PearsonPrentice Hall, 2006. 4.2 Cheng, H., “C for Engineers and Scientists”, McGraw Hill, 2010. 4.3 Hanly, J.R. and Koffman, E.B., “C Program Design for Engineers”, 2 nd Ed., Addison-Wesley, 2001. 5.0 ACADEMIC STAFF INVOLVED: 5.0.1 Puan Yasmin Mohd Yacob (PPKKP) E-Mail: yasmin.yacob@unimap.edu.my 5.0.2 Puan Nurulisma Ismail (PPKKP) E-mail: nurul@unimap.edu.my 5.0.3 En. Ahmad Nasir Che Rosli (PPKKP) E-mail: ahmadnasir@unimap.edu.my 5.0.4 En.Suhizaz Sudin (PPKKP) E-mail: suhizaz@unimap.edu.my 2 6 List of Topics 1. Introduction To Computers and Computer Systems 2. Introduction To Computer Programming 2.1. Algorithm 2.2. Pseudo Code 2.3. Flowchart 3. Introduction to Computer Programming/ C Programming Language 3.1. Sample Programs 3.2. Identifiers 3.3. Data Types and Declaration Type 3.4. Operators 4. C Program Structures 4.1. Selection Structures (if, if-else, if-else if, switch-case) 4.2. Nested Selection Structures 4.3. Repetition Structures (Loop) (while, do-while, for) 4.4. Nested Loop Structures 5. Functions 5.1. Predefined (e.g. Math, String) 5.2. User-defined 5.3. Prototype, define and call 5.4. Scope (Global and Local) 5.5. Passing Arguments (by value and reference) 5.6. Recursive Function 6. Arrays 6.1. Arrays of Data 6.2. Array Declaration 6.3. Array Initialization 6.4. Operations on Array 6.5. Multidimensional Arrays 6.6. Index out of bound 6.7. Passing Arrays to Function 6.8. Displaying Array in a Function 6.9. How Array are passed in a function call 7. Strings 7.1. Strings Type 7.2. Character Array 7.3. Declaration of Strings 7.4. Fundamentals of Strings & Characters 7.5. Initialization of Strings 7.6. Assigning values to Strings 7.7. Calculating of Strings Size 7.8. Strings Conversion Functions 7.9. Comparison Functions of the Strings 7.10. ASCII Table 8. Pointers 3 9. Structures 9.1. Structure Definitions and Declaration 9.2. Initializing Structure 9.3. Operations on Structure members 9.4. Structures as Functions Parameters 9.5. Array of Structures 10. File Processing 10.1. File Declaration and Initialization 10.2. Creating and Opening File 10.3. Closing File 10.4. EOF 10.5. Reading from File 10.6. Writing to File 10.7. Random Access File 4 TEACHING PLAN EKT120/4 COMPUTER PROGRAMMING SEMESTER 1 SESSION 2014/2015 WEEK 1 2 DATE 8-12 Sept 15 - 19 Sept SYLLABUS LAB ACTIVITY Intro to Computers and Computer Systems Intro to Computer Programming Algorithm o Pseudo Code o Flowchart Sample programs Identifiers Intro to Computer Programming / C Programming Language cntd.. Data types and type declarations Operators LAB SESSION 1 LAB SESSION 2 Lab Exercise 1: Intro to Linux Environment Lab Exercise 2: Intro to computer and programming Lab Exercise 3: Intro to C Programming Lab Exercise 3: Intro to C Programming 3 22 - 26 Sept C Program Structures Selection Structures (if,if-else,switch-case) Nested Selection Structures Lab Exercise 4: Selection Structures Lab Exercise 4: Selection Structures 4 29 Sept3 Oct Repetition Structures (Loop) (while,do-while,for) Nested Loop LAB ASSIGNMENT 1: Selection Lab Exercise 5: Repetition Structures (Loop) 5 6 -10 Oct Functions –Predefined (e.g Math and String) Functions-User-defined Function prototype, call and def Lab Exercise 5: Repetition Structures (Loop) LAB ASSIGNMENT 2: Repetition Structures 6 13 – 17 Oct Functions –Predefined (e.g Math and String) Functions-User-defined Function prototype, call and def Lab Exercise 6: Functions 1 Lab Exercise 6: Functions 1 5 NOTES Malaysia Day - 16 Sept 2013 Hari Raya Aidil Adha – 6-7 Oct 2014 TEST 1 (1.5 HOURS) Cover from Intro until Loop 20 – 26 Oct MID SEMESTER BREAK 7 27 Oct -31 Oct 8 3–7 Nov 9 10 – 14 Nov 10 Deepavali-23 Oct 2014 Awal Muharam-25 Oct 2014 Lab Exercise 7: Functions 2 Lab Exercise 7: Functions 2 LAB ASSIGNMENT 3: Functions Lab Exercise 8: Arrays 1 Arrays (Declaration, usage and operation) Multidimensional Arrays Lab Exercise 8: Arrays 1 Lab Exercise 9: Arrays 2 17 – 21 Nov Arrays cntd.. Strings Lab Exercise 9: Arrays 2 Lab Exercise 10: Strings 11 24 - 28 Nov Arrays cntd.. Strings Lab Exercise 10: Strings LAB ASSIGNMENT 4: Arrays and Strings 12 1–5 Dis 8 – 12 Dis Pointers Structures Lab Exercise 11: Pointers Lab Exercise 12: Structures Lab Exercise 11: Pointers Lab Exercise 12: Structures 15 – 19 Dis File Processing Lab Exercise 13: File Processing Lab Exercise 13: File Processing 15 22 – 28 Dis REVISION WEEK 16 29 Dis -18 Jan FINAL EXAM 13 14 Functions –Scope (Global and Local) Functions – Passing Arguments (by value and by reference) Recursive function Arrays (Declaration, usage and operation) Multidimensional Arrays TEST 2 (1.5 HOURS) Cover from Functions until Pointers LAB TEST Christmas-25 Dec 2013 6