Ceng 230

Introduction to C Programming

Spring 2009

http://www.ceng.metu.edu.tr/courses/ceng230



CEng 230 is a service course offered to non-departmental students. The course aims to introduce students to some basic concepts about computers and programming and to give them the ability to solve some simple problems using C programming language.

Topics: Introduction. Constants, variables, expressions, statements. Selective structures. Repetitive structures and arrays. Functions. Pointers. Multi-dimensional arrays.

Textbooks:

  1. J.R.Hanly and E.B.Koffman, Problem Solving and Program Design in C, Addison Wesley, Fifth Edition, 2006 (older editions can also be used).

  2. H. M. Deitel and D. J. Deitel, C: How to Program, Pearson Education, Fifth Edition, 2006 (older editions can also be used).

Course Outline (numbers in parentheses correspond to sections in Hanly and Koffman)

1.Overview of Computers and Programming
1.1 Computer Architecture
1.2 Program Development

2. Overview of C (1.*, 2.1-2.6, 3.2, 7.1-7.2)
2.1 C Language Elements
2.2 Variable Declarations and Data Types
2.3 Executable Statements
2.4 General Form of a C Program
2.5 Arithmetic Expressions
2.6 Formatting Numbers in Program Output
2.7 Library Functions
2.8 Representation and Conversion of Numeric Types
2.9 Representation and Conversion of Type char

3. Selection Structures: IF and SWITCH Statements (4.*)
3.1 Relational and Logical Operators
3.2 if Statement
3.3 Compound Statements
3.4 Nested if Statements
3.5 switch Statement

4. Repetition and Loop Statements (5.*)
4.1 while Statements
4.2 for Statements
4.3 do-while Statements
4.4 Nested Loops

5. Modular Programming (3.4-3.5, 6.*)
5.1 Functions without Arguments
5.2 Functions with Input Arguments
5.3 Functions with Simple Output Parameters
5.4 Scope of Names
5.5 Formal Output Parameters as Actual Arguments

6. Arrays (8.*)
6.1 Declaring and Referencing Arrays
6.2 Array Subscripts
6.3 Using for Loops for Sequential Access
6.4 Using Array Elements as Function Arguments
6.5 Arrays Arguments
6.6 Multidimensional Arrays

7. Strings (9.1-9.4)
7.1 String Basics and strcpy, strcat, strcmp, strchr, strstr
7.2 String Comparison

Class Schedule

Grading

%30

Midterm (Apr. 14)

%40

Final

%25

Laboratory (Each lab %0.5, Midterm lab %8, and Final lab %13)

%5

Attendance, Homework assignments, Quizzes, etc.

Contact Information:
You can find all information about the course and the announcements in course web page:
http://www.ceng.metu.edu.tr/courses/ceng230

For any questions or problems, please FIRST READ FAQ . If you can't find an answer then write to 2xx@ceng.metu.edu.tr

Coordinating instructor: Asuman Doğac
Coordinating assistant: Atıl İşçen
Laboratory coordinator: Levent Bayındır