Skip to main content
User Image

فواز بن سعود بن ماطر العتيبي

Lecturer

عضو هيئة تدريس

Sciences
مكتب رقم 1أ93 مبنى 4
course

CSC 201: C Programming Language

CSC 201: C Programming Language

Instructor:           Dr. Soha S.Zaghloul,

                Building 6, Third Floor, Office 124 (6T124)

Schedule:            Sun, Tue, and Thu from 11 to 11:50

Office Hours:      Mon, Tue and Thu from 9 to 11 and 12 to 1

                                Sun from 12 to 1

Blog:                      www.csc201.wordpress.com

Course Description:

CSC 201 provides an introduction to the C programming language for those with no prior programming experience. The course aims to teach the syntax and use of major constructs of the C language. The course coversC built-in data types, arithmetic, assignment, relational, and logical operators. In addition, it includes the selection and repetition constructs. Functions, arrays, pointers, character strings, and files are also discussed. After successfully completing this course, the student will be able to write computer programs using C language.

Course Objectives:

This course aims at gaining experience in the computer programming using the C language. The course enables the students to analyze and apply the concepts of programming in the C language. Upon completion of the course, the student should be able to:

  • Understand introductory computer science terms.
  • Understand the program specification.
  • Translate the program specification into the C language
  • Compile and execute a C program in a programming environment.
  • Debug C programs.
  • Perform arithmetic, relational and logical operations.
  • Manipulate characters and strings.
  • Apply various selection constructs.
  • Implement repetition controls.
  • Use functions.
  • Manipulate arrays using pointers.
  • Manipulate files

 

Textbook:

Paul Deitel and Harvey Deitel.“C: How to Program”, Prentice Hall, 7th Edition, 2012.

 

Grades Distribution:

Homeworks and Quizzes                              10

Labs and Projects                                             20

Mid 1                                                                     15

Mid 2                                                                     15

Final                                                                       40

 

Prospective Course Plan (for the current semester)

 

W L Topics Reference in Deitel
1 1 Course Orientation  
  2 Introduction

  • Computer Organization
  • Compilers
  • C Standard Library
 

Section 1.3

Section 1.6

Section 1.9
  3 C Keywords

Writing a sample program

Writing comments in a program

The Memory Concept

Data Types in C

Strings & characters fundamentals

Constants & Variables
Fig. 2.15

Fig. 2.1 to 2.5

 

 

 

Section 9.6

Section 7.5
2 1 The scanf statement

  • Reading formatted input with scanf

The printf statement

  • Formatting output with printf
  • Printing characters and strings
  • Other conversion specifiers
  • Printing with field widths and precision
  • Using flags in the printf statement
  • Printing literals and escape sequences
 

Section 9.11

 

Sections 9.3 to 9.5

 

Section 9.7 (defer p)

Section 9.8

Section 9.9

Section 9.10
  2 Operators in C language

  • Arithmetic operators
  • Assignment operator
  • Increment & Decrement operators
  • Relational operators
  • Confusing Equality (==) & Assignment operator (=)
  • Logical operators
  • Rules of precedence
 

Fiig. 2.9

Section 3.11

Section 3.12

Fig. 2.12 & 2.13

Section 4.11

 

Section 4.10

Figs 2.10, 2.11, 2.14, 4.16
    Quiz #1: All Above  
  3 Program Development in C

  • Algorithms, flowcharts &pseudocode
  • The if selection statement
  • The if…else selection statement
  • Nested if statements
 

Sections 3.1 to 3.4

Section 3.5

Section 3.6

Section 3.6
3 1 The selection structure (cnt’d)

  • The switch statement
  • The break statement
 

Section 4.7

Section 4.9
    Quiz #2: Selection Structure  
  2 Loops:

   The counter-controlled repetition

  • The for statement
 

 

Sections 4.3 to 4.6
  3 Loops:

   The sentinel-controlled operation

  • The while repetition statement
  • The continue statement
 

 

Section 3.7

Section 4.9
4 1 Loops:

   The sentinel-controlled operation (cnt’d)

  • The do…while repetition statement
 

 

Section 4.8
  2 The National Day  
    Quiz #3: Loops  
  3 Functions

  • What are functions?
  • Function prototype
  • Function definition
  • Function calling (execution)
 

 

Section 5.6, Fig. 5.3

Section 5.5

Section 5.7, Fig. 5.3
5 1 Eid Al-Adha
  2
  3
6 1
  2
  3
7 1 Functions (cnt’d)

  • Call-by-value
  • Scope Rules
 

Section 5.9
  2 Functions (cnt’d)

  • C built-in functions
  • String manipulation functions
 

Fig. 5.2, 5.6, 8.1, 8.5, 8.12

Fig. 8.17, 8.20, 8.22, 8.36
    Quiz #4: Functions  
  3 Arrays

  • What is an array?
  • Declaration (definition) of arrays
  • Examples
 

Section 6.2

Section 6.3

Section 6.4
8 1 Arrays with functions

  • Passing arrays to functions
  • Searching arrays
  • Sorting arrays
 

Section 6.5

Section 6.8

Section 6.6
  2 Arrays (cnt’d)

  • Multiple-subscripted arrays
  • The sizeof operator
 

Section 6.9

Section 7.7
    Quiz #5: Arrays  
  3 Revision (if time allows)  
9 1 Mid-Term 1 Exams
  2
  3
10 1
  2
  3
11 1
  2
  3 Pointers:

  • Definition & initialization
  • Pointer operators
  • Pointer expressions and arithmetic
  • The pointer conversion specifier
 

Section 7.2

Section 7.3

Section 7.8

Section 9.7
12 1 Pointers with functions

  • Call-by-reference
  • Example: Bubble sort using call-by-reference
 

Sections 5.9 and 7.4

Section 7.6
  2 Relationship between pointers and arrays

Arrays of pointers
Section 7.9

Section 7.10
  3 Revision (if time allows)  
    Quiz #6: Pointers  
13 1 Mid-Term 2 Exams
  2
  3
14 1
  2
  3
15 1
  2
  3 Files:

  • Data Hierarchy
  • Files and streams
 

Section 11.2

Section 11.3
16 1 Files (cont’d):

  • Creating a sequential-access file
  • Reading data from a sequential-access file
 

Section 11.4

Section 11.5
  2 Files (cont’d):

  • Random-Access files
  • Creating a random-access file
  • Writing data randomly into a random-access file
  • Reading data from a random-access file
 

Section 11.6

Section 11.7

Section 11.8

 

Section 11.9
  3 Revision (if time allows)  
17 1 Practical Exams Week
  2
  3
18 1 Final Exams
  2
  3
19 1
  2
  3
20 1
  2
  3

 

 

 

Important Policies:

1) Cheating is prohibited. If the student caught cheating, then the grade on that assignment for the person providing answers and the one taking the answers will be 0%.

2) Late assignments will not be accepted.

 

course attachements