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
|
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
The printf statement
|
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
|
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
|
Sections 3.1 to 3.4 Section 3.5 Section 3.6 Section 3.6 |
|
3 | 1 | The selection structure (cnt’d)
|
Section 4.7 Section 4.9 |
Quiz #2: Selection Structure | |||
2 | Loops: The counter-controlled repetition
|
Sections 4.3 to 4.6 |
|
3 | Loops: The sentinel-controlled operation
|
Section 3.7 Section 4.9 |
|
4 | 1 | Loops: The sentinel-controlled operation (cnt’d)
|
Section 4.8 |
2 | The National Day | ||
Quiz #3: Loops | |||
3 | Functions
|
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)
|
Section 5.9 |
2 | Functions (cnt’d)
|
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
|
Section 6.2 Section 6.3 Section 6.4 |
|
8 | 1 | Arrays with functions
|
Section 6.5 Section 6.8 Section 6.6 |
2 | Arrays (cnt’d)
|
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:
|
Section 7.2 Section 7.3 Section 7.8 Section 9.7 |
|
12 | 1 | Pointers with functions
|
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:
|
Section 11.2 Section 11.3 |
|
16 | 1 | Files (cont’d):
|
Section 11.4 Section 11.5 |
2 | Files (cont’d):
|
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.