Information
| Unit | FACULTY OF SCIENCE AND LETTERS |
| COMPUTER SCIENCES PR. | |
| Code | BBZ411 |
| Name | C Programming Language |
| Term | 2026-2027 Academic Year |
| Semester | 7. Semester |
| Duration (T+A) | 2-2 (T-A) (17 Week) |
| ECTS | 5 ECTS |
| National Credit | 3 National Credit |
| Teaching Language | Türkçe |
| Level | Belirsiz |
| Type | Normal |
| Label | E Elective |
| Mode of study | Yüz Yüze Öğretim |
| Catalog Information Coordinator | Prof. Dr. YUSUF ALPER KAPLAN |
| Course Instructor |
The current term course schedule has not been prepared yet.
|
Course Goal / Objective
To provide a hands-on introduction to the C programming language. To teach the basic C language syntax, variable declaration, basic operators, program flow and control, defining and using functions, file and operating system interface.
Course Content
An Overview of C: The origin of C, the form of a C program: Variables, Constants, Operators, and Expressions: identification of names, data types, declaration of variables, assignment statements, constants, operators, bitwise operators. Program Control Statements: ?true? and ?false? in C, C statements, conditional statements, if(), switch(), loops while(), do/while(), break, exit() , continue. Functions: The return statements, scope rules of functions, function arguments, function prototypes, recursion, pointer to functions. Arrays: single-dimensional arrays, passing single-dimension arrays to functions, two-dimensional arrays, multidimensional arrays, arrays and pointers. Pointers: Pointers are addresses, pointer variables, the pointer operators, pointer expressions, pointers and arrays, initializing pointers, pointer to functions. Input, Output, and Disk Files: streams and files, console I/O, formatted console I/O. Structures.
Course Precondition
none
Resources
Deitel, Paul J.; C : how to program; Eighth edition.
Notes
Deitel, Paul J.; C : how to program; Eighth edition.
Course Learning Outcomes
| Order | Course Learning Outcomes |
|---|---|
| LO01 | Understand the general concepts of programming languages, programming and algorithms. |
| LO02 | develop basic problem solving skills with computer programming in order to solve simple problems. |
| LO03 | Understand the logical features that characterize the correct behavior of a program. |
| LO04 | Know the commands necessary to control the program flow and how to use them. |
| LO05 | Define the functions, learn the array logic, and use the address variables. |
Relation with Program Learning Outcome
| Order | Type | Program Learning Outcomes | Level |
|---|---|---|---|
| PLO01 | Bilgi - Kuramsal, Olgusal | Gain comprehensive knowledge of fundamental concepts, algorithms, and data structures in Computer Science. | |
| PLO02 | Bilgi - Kuramsal, Olgusal | Learn essential computer topics such as software development, programming languages, and database management | 5 |
| PLO03 | Bilgi - Kuramsal, Olgusal | Understand advanced computer fields like data science, artificial intelligence, and machine learning. | |
| PLO04 | Bilgi - Kuramsal, Olgusal | Acquire knowledge of topics like computer networks, cybersecurity, and database design. | |
| PLO05 | Beceriler - Bilişsel, Uygulamalı | Develop skills in designing, implementing, and analyzing algorithms | 5 |
| PLO06 | Beceriler - Bilişsel, Uygulamalı | Gain proficiency in using various programming languages effectively | |
| PLO07 | Beceriler - Bilişsel, Uygulamalı | Learn skills in data analysis, database management, and processing large datasets. | |
| PLO08 | Beceriler - Bilişsel, Uygulamalı | Acquire practical experience through working on software development projects. | 5 |
| PLO09 | Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği | Strengthen teamwork and communication skills. | |
| PLO10 | Yetkinlikler - Alana Özgü Yetkinlik | Foster a mindset open to technological innovations. | |
| PLO11 | Yetkinlikler - Öğrenme Yetkinliği | Encourage the capacity for continuous learning and self-improvement. | |
| PLO12 | Yetkinlikler - İletişim ve Sosyal Yetkinlik | Enhance the ability to solve complex problems |
Week Plan
| Week | Topic | Preparation | Methods |
|---|---|---|---|
| 1 | An Overview of C | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
| 2 | Variables, Constant and Operators | Reading lecture notes | Öğretim Yöntemleri: Soru-Cevap, Anlatım |
| 3 | Expressions, Data Types, Declaration of Variables | Reading lecture notes | Öğretim Yöntemleri: Anlatım |
| 4 | Program Control Statements(True and Fallse in C) | Reading lecture notes | Öğretim Yöntemleri: Anlatım |
| 5 | if (Nested if, The if-else-if ladder, the ? ternary operator) | Reading lecture notes | Öğretim Yöntemleri: Anlatım |
| 6 | Switch ve İç İçe Switch Yapıları | Reading lecture notes | Öğretim Yöntemleri: Anlatım |
| 7 | Loops, for | Reading lecture notes | Öğretim Yöntemleri: Anlatım |
| 8 | Mid-Term Exam | Exam preparation | Ölçme Yöntemleri: Yazılı Sınav |
| 9 | Loops, for(continued), do/while,break exit(), continue | Reading lecture notes | Öğretim Yöntemleri: Anlatım |
| 10 | Arrays | Reading lecture notes | Öğretim Yöntemleri: Anlatım |
| 11 | Functions | Reading lecture notes | Öğretim Yöntemleri: Anlatım |
| 12 | Pointers | Reading lecture notes | Öğretim Yöntemleri: Anlatım, Soru-Cevap |
| 13 | Pointers(continued)-File(s) in C | Reading lecture notes | Öğretim Yöntemleri: Anlatım |
| 14 | Structure in C (continued) | Reading lecture notes | Öğretim Yöntemleri: Anlatım |
| 15 | exercise | Reading lecture notes | Öğretim Yöntemleri: Anlatım |
| 16 | Term Exams | Exam preparation | Ölçme Yöntemleri: Yazılı Sınav |
| 17 | Term Exams | Exam preparation | Ölçme Yöntemleri: Yazılı Sınav |
Student Workload - ECTS
| Works | Number | Time (Hour) | Workload (Hour) |
|---|---|---|---|
| Course Related Works | |||
| Class Time (Exam weeks are excluded) | 14 | 3 | 42 |
| Out of Class Study (Preliminary Work, Practice) | 14 | 3 | 42 |
| Assesment Related Works | |||
| Homeworks, Projects, Others | 0 | 0 | 0 |
| Mid-term Exams (Written, Oral, etc.) | 1 | 18 | 18 |
| Final Exam | 1 | 18 | 18 |
| Total Workload (Hour) | 120 | ||
| Total Workload / 25 (h) | 4,80 | ||
| ECTS | 5 ECTS | ||