Undergraduate
Faculty of Engineering and Architecture
Computer Engineering
Anlık RSS Bilgilendirmesi İçin Tıklayınız.Düzenli bilgilendirme E-Postaları almak için listemize kaydolabilirsiniz.


Programming II

Course CodeSemester Course Name LE/RC/LA Course Type Language of Instruction ECTS
CSE2002 2 Programming II 2/0/2 CC English 8
Course Goals
This course covers the advanced features of C Programming Language. Throughout the lectures and lab studies, students are expected to master the advanced topics of C programming language. Pointers, pointers and arrays, strings, the preprocessor, writing large programs, structures, unions, enumerations, advanced uses of pointers, declarations, program design low level programming, and input/output will be discussed.
Prerequisite(s) -
Corequisite(s) -
Special Requisite(s) Although there is no formal prerequisite for this course, students are expected to know the topics upto Chapter 11. During the CSE1001 course, we covered the first ten chapters and in this course, we will go on with the remaining chapters of the textbook.
Instructor(s) Assis. Professor Öznur ŞENGEL
Course Assistant(s) Res. Assis. İrem AKSOY
Schedule Lecture (2 & 3) Monday 09:00-10:45, Lecture (4 & 5) Monday 11:00-12:45, Lecture (6 & 7) Wednesday 09:00-10:45, Lab. (2) Wednesday 11:00-12:45, Lab. (3) Wednesday 13:00-14:45 Lab. (4) Thursday 09:00-10:45, Lab. (5) Thursday 11:00-12:45, Lab. (6) Thursday 14:00-15:45, Lab. (7) Thursday 16:00-17:45.
Office Hour(s) Assis. Prof. Dr. Öznur ŞENGEL: To make an appointment, please contact via e-mail 2 days in advance.
Teaching Methods and Techniques Lecture, Application
Principle Sources

       K. N. King “C Programming: A Modern Approach”,  Norton Publishing,, 2nd Edition, 2008.

Other Sources Jeri R. Hanly, Elliot B. Koffman, "Problem solving and program design in C", 8/E, Pearson Education.

P. Deitel, H. Deitel, "C How to Program", 8/E.
Course Schedules
Week Contents Learning Methods
1. Week Course Introduction and Syllabus, Pointers (Chapter 11) Oral Presentation, Laboratory
2. Week Pointers and Arrays (Chapter 12) Oral Presentation, Laboratory
3. Week Strings (Chapter 13) Oral Presentation, Laboratory
4. Week The Preprocessor (Chapter 14) Oral Presentation, Laboratory
5. Week Structures, Unions, and Enumerations (Chapter 16) Oral Presentation, Laboratory
6. Week Structures, Unions, and Enumerations (Chapter 16) Oral Presentation, Laboratory
7. Week Advanced Uses of Pointers (Chapter 17) Oral Presentation, Laboratory
8. Week Midterm Examination Midterm Examination
9. Week Advanced Uses of Pointers (Chapter 17) Oral Presentation, Laboratory
10. Week Input/Output (Chapter 22) Oral Presentation, Laboratory
11. Week Input/Output (Chapter 22) Oral Presentation, Laboratory
12. Week Writing Large Programs (Chapter 15) Oral Presentation, Laboratory
13. Week Writing Large Programs (Chapter 15) Oral Presentation, Laboratory
14. Week Declaration, Program Design, Low-Level Programming, The Standard Library, Error Handling, International Features (Chapter 18, 19, 20, 21, 24, 25) Oral Presentation, Laboratory
15. Week
16. Week
17. Week
Assessments
Evaluation tools Quantity Weight(%)
Midterm(s) 1 30
Project(s) 1 15
Lab 1 15
Final Exam 1 40


Program Outcomes
PO-1Adequate knowledge in mathematics, science and engineering subjects pertaining to the relevant discipline; ability to use theoretical and applied information in these areas to model and solve engineering problems.
PO-2Ability to identify, formulate, and solve complex engineering problems; ability to select and apply proper analysis and modelling methods for this purpose.
PO-3Ability to design a complex system, process, device or product under realistic constraints and conditions, in such a way so as to meet the desired result; ability to apply modern design methods for this purpose. (Realistic constraints and conditions may include factors such as economic and environmental issues, sustainability, manufacturability, ethics, health, safety issues, and social and political issues according to the nature of the design.)
PO-4Ability to devise, select, and use modern techniques and tools needed for engineering practice; ability to employ information technologies effectively.
PO-5Ability to design and conduct experiments, gather data, analyse and interpret results for investigating engineering problems.
PO-6Ability to work efficiently in intra-disciplinary and multi-disciplinary teams; ability to work individually.
PO-7Ability to communicate effectively, both orally and in writing; knowledge of a minimum of one foreign language.
PO-8Recognition of the need for lifelong learning; ability to access information, to follow developments in science and technology, and to continue to educate him/herself.
PO-9Awareness of professional and ethical responsibility.
PO-10Information about business life practices such as project management, risk management, and change management; awareness of entrepreneurship, innovation, and sustainable development.
PO-11Knowledge about contemporary issues and the global and societal effects of engineering practices on health, environment, and safety; awareness of the legal consequences of engineering solutions.
Learning Outcomes
LO-1I can explain the pointer concept in C programming language.
LO-2I can exploit the pointers to keep track of and manipulate the arrays.
LO-3I can design C programs by using strings.
LO-4I can use structures, unions, and enumerations in my C programs and I'm aware of the difference between them.
LO-5I can use the required functions to allocate memory dynamically.
LO-6I can use parameterized preprocessing directives in my programs.
LO-7I can design programs which handle basic file operations.
LO-8I can explain the advanced uses of pointers and declarations and use in my programs.
Course Assessment Matrix:
Program Outcomes - Learning Outcomes Matrix
 PO 1PO 2PO 3PO 4PO 5PO 6PO 7PO 8PO 9PO 10PO 11
LO 1
LO 2
LO 3
LO 4
LO 5
LO 6
LO 7
LO 8