Syllabus of CTIS 151 - Introduction to Programming
Department: Information Systems and Technologies
Credits: Bilkent 4, ECTS 6,5
Course Coordinator: Serpil Tın
Semester: 2024-2025 Spring
Section: 001
Instructor(s): Burcu Liman
Office & Office Hours:
Course Schedule:
Mon. Tue Wed Thu Fri Sat Sun
08:30 09:20 C-CTISL1
09:30 10:20 C-CTISL1
10:30 11:20 C-216
11:30 12:20 C-216
12:30 13:20
13:30 14:20 C-CTISL1
14:30 15:20 C-CTISL1
15:30 16:20 C-216
C-216
16:30 17:20
(S)
17:30 18:20
18:30 19:20
19:30 20:20
20:30 21:20
21:30 22:20
Online/Hybrid Lecture Face-to-Face Lab/Studio
Face-to-Face Lecture Online Lab/Studio
Recitation
S : Spare Hour
Contact Hours: 3 hours of lecture per week, 4 hours of Lab/Studio/Others per week
Textbook and Other Required Material:
Required - Textbook: C How to Program, Paul Deitel, Harvey Deitel, 2023, Global Edition (9th Edition) , Pearson Educatio
ISBN-13: 978-1-292-43707-3 ISBN-10: 1-292-43707-3
Recommended - Textbook: Problem Solving and Program Design in C, Jeri R. Hanly, Elliot B. Koffman, 2016, 8th edition,
Addison Wesley
Catalog Description:
An introduction to programming from both design and programming standpoints. Syntax and semantics of programming languages
programming style, program debugging and testing, data representation, simple arithmetic expressions, decision and control statem
using arrays, introduction to standard libraries, structured and modular programming techniques will be covered using C language.
Prerequisite(s): None
GenAI Policy: -
Assessment Methods:
Type Label Count Total Contribution
1 Quiz Lecture Quiz 1 5
2 Midterm Midterm Exam 1 15
3 Lab exam Lab Exam-1 1 15
4 Lab exam Lab Exam-2 1 15
5 Lab exam Lab Final Exam 1 20
6 Performance Class and Lab Performance 1 5
7 Final Final Exam 1 25
Minimum Requirements to Qualify for the Final Exam:
Students: [Get at least 17 points from the Lab Exams plus the Lab Final Exam weighted average and at least 8 points from the Lect
Quiz plus the Midterm Exam] AND [Don't miss more than 10 hours. from the lesson]
Course Learning Outcomes:
Course Learning Outcome Assessment
Demonstrate algorithmic thinking. Midterm Exam
Final Exam
Use a high-level programming language for problem solving. Lab Exam-1
Lab Exam-2
Lab Final Exam
Analyze a problem to implement a solution by using programming approaches. Midterm Exam
Final Exam
Weekly Syllabus:
1. Information about the course: Objective, Textbook, and Grading. Introduction to Programming Software Development Met
Expressing Algorithms. Steps in Developing a C Program Structure of a C Program: Comments, Preprocessor Directives, M
Function Prototype, Variable Declarations, Data Representation: Reserved Words.
2. Identifiers, Variables. Data Types, Constants, Punctuators. Declaration and Assignment Statements. Arithmetic Operators (+
*, /, %). Arithmetic Expressions with Multiple Operators.
3. Conversion between an algebraic formula and an arithmetic expression. I/O Statements: printf and scanf, Formatting Outpu
Built-in Functions. Boolean Expressions: Relational and Logical Operators, Precedence of Operators, Compound Boolean
Expressions.
4. Selection Structures: Simple if and if…else statement, Nested if statement. Selection Structures: switch statement.
5. Counter-controlled Repetition (for Loops), Increment – Decrement Operators. Sentinel-controlled Repetition (while Loops)
6. Do…while, Data Validation, Loop Conversions. Nested Loops, Examples with Loops.
7. Modular Programming, Function Prototype, void functions with no parameters, void functions with parameters.
8. Functions that return a value, Parameter Passing, Formal and Actual Parameters, Scope of Variables. Functions with Output
Parameters, Pointers, Call by Value – Call by Reference,
9. File Operations Opening, reading, writing, closing text files. General Review
10. One-dimensional Arrays: Declaration, Assignment, Initialization. Parallel Arrays. Operations on One-dimensional Arrays: I
/ Output (getchar, putchar), Counting, Find sum, average, min, max.
11. One-dimensional Arrays and Functions: Arrays as Input and Output Parameters. One-dimensional Arrays and Functions:
Exercises.
12. Two-dimensional Arrays: Declaration, Initialization, Operations, Matrix Operations. Two-dimensional Arrays and Function
Arrays as Input and Output Parameters.
13. Exercises with Two-dimensional Arrays. Exercises with One-dimensional Arrays and Two-dimensional Arrays.
14. Exercises, Exclusive Type Conversion. General Review.
ECTS - Workload Table:
Activities Number Hours Workload
Laboratory (including preparation) 14 4 56
Preperation for Final exam 1 20 20
Lab Final exam 1 2 2
Course hours 14 3 42
Preperation for Quiz 6 3 18
Individual or group work 14 1 14
Quiz 6 2 12
Final exam 1 2 2
Midterm exam 1 2 2
Preperation for Lab Final exam 1 20 20
Preparation for Midterm exam 1 10 10
Total Workload: 198
Total Workload / 30: 198 / 30
6.6
ECTS Credits of the Course: 6,5
Type of Course: Exercise Course - Laboratory Work - Lecture - Practical
Course Material: PC - PP - Written
Teaching Methods: Assignment - Exercises - Lecture - Practical session