CEng230 - Introduction to C Programming


Semester: SPRING 2016

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


CEng 230 is a service course offered to students not enrolled in Computer Engineering. 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 the C programming language.


Topics: Introduction to computer architecture. The C programming language elements: constants, variables, expressions, and statements. Conditional expressions and “if” statements. Looping using “for” and “while” statements. One dimensional and multi-dimensional arrays. Functions. Multi-dimensional arrays. Strings.


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 (Tentative)


Week

Date

Lecture

Lab

Extra

1

20-24 February

Overview of C

NO LAB


2

27 Feb.-3 March

Overview of C

NO LAB

Add - Drop

3

6-10 March

Overview of C, Selection Structures

Introduction to C Programming

4

13-17 March

Selection Structures

Simple Programming

5

20-24 March

Selection Structures

"if" statement

6

27-31 March

Repetition and Loops

"switch" statement

7

3-7 April

Repetition and Loops

LAB MIDTERM


8

10-14 April

Modular Programming

"while-for" statements



9

17-21 April

Arrays

Functions with input arguments

10

24-28 April

Arrays

Arrays



11

1-5 May

Strings

NO LAB


12

8-12 May

Strings

LAB FINAL


13

15-19 May

Review

NO LAB


14

22-26 May

Review

NO LAB



Grading


%30

Midterm

%40

Final

%30

Laboratory (Each lab %1.5, Midterm lab %10, and Final lab %11)



You can find all the announcements about the course here: http://ceng230.ceng.metu.edu.tr/announcements.php


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: GOKTURK UCOLUK

Coordinating Assistants: ALPER KARAMANLIOGLU , ANIL CETINKAYA

Contact: Tel: (0312) 210 55 97    mail:2xx@ceng.metu.edu.tr