Faculty of Engineering and Natural Sciences
Department of Information Technologies

Code Name Level Year Semester
CEN 111 Programming I Undergraduate 1 Fall
Status Number of ECTS Credits Class Hours Per Week Total Hours Per Semester Language
Compulsory 6 3 + 2 180 English

Instructor Assistant Coordinator
Günay Karli, Assoc. Prof. Dr. Selcuk Cankurt Günay Karli, Assoc. Prof. Dr.
[email protected] [email protected] no email

The objective of this course are
a) Develop a basic understanding of programming concepts and using these programming concepts in C language. Structured programming concept is introduced. Programming constructs such as sequential structures, selection structures, and repetition structures are explained.
b) As for introduction to programming with C languages, variables, if-then-else, loop structures: for/while/do-while, break/continue/switch statements, flowcharting solutions, arrays are covered

  1. Course outline & Introduction to Computers, the Internet and the Web
  2. Introduction to C Programming
  3. Structured Program Development in C
  4. C Program Control
  5. Functions
  6. Arrays
  7. Pointers
  8. Characters and Strings
  9. Midterm Exam Week
  10. Formatted InputOutput
  11. File Processing
  12. Introducing Object Technology
  13. Introduction to Classes, Objects and Strings
  14. Classes A Deeper Look, Part 1
  15. Classes A Deeper Look, Part 2

  1. Course Introduction & Introduction to Algorithms
  2. Variables and arithmetic in C
  3. Arithmetic in C & Relational operators
  4. Control structures (Selection:if-else statements and nested selection
  5. Introduction to Flowchart and Pseudocode

  1. Control structures (Repetition: counter-controlled and sentinel-controlled repetition with while)
  2. Control structures (for repetition) and switch structure
  3. Control structures ( do while repetition), break and continue statements and logical operators
  4. Kurban Baramı
  5. Midterm Exam Week
  6. Functions: Program modules in C, math library functions, definitions, prototypes, header files
  7. Functions: parameter passing: call by value, call by reference. Pointers, Dynamically memory management
  8. Arrays: Declaring arrays, examples using arrays, passing arrays to functions, Arrays: Passing arrays to functions, Sorting Arrays
  9. Strings, Basic File I/O

  • Lectures
  • Practical Sessions
  • Presentation
  • Project
  • Assignments
Description (%)
Method Quantity Percentage (%)
Midterm Exam(s)120
Final Exam130
Total: 100
Learning outcomes
  • Demonstrate a systematic and critical understanding of the theories, principles and practices of computer programming;
  • Critically review the role of a “professional computer programmer” with particular regard to an understanding of legal and ethical issues;
  • Creatively apply contemporary theories, processes and tools in the development and evaluation of solutions to problems and product design;
  • Actively participate in, reflect upon, and take responsibility for, personal learning and development, within a framework of lifelong learning and continued professional development;
  • Present issues and solutions in appropriate form to communicate effectively with peers and clients from specialist and non-specialist backgrounds;
  • H.M.Deitel & P.J.Deitel, C How to Program, sixth International Edition, Prentice Hall PTR, 2010.

ECTS (Allocated based on student) WORKLOAD
Activities Quantity Duration (Hour) Total Work Load
Lecture (14 weeks x Lecture hours per week)14342
Laboratory / Practice (14 weeks x Laboratory/Practice hours per week)14228
Midterm Examination (1 week)122
Final Examination(1 week)122
Preparation for Midterm Examination11616
Preparation for Final Examination13030
Assignment / Homework/ Project13030
Seminar / Presentation13030
Total Workload: 180
ECTS Credit (Total workload/25): 7