An Najah National University
Faculty of Engineering – Computer Engineering
Course title and number |
Computer Programming 66111 |
|
Semester and academic year |
Fall 2010/2011 |
|
Compulsory / Elective |
Compulsory |
|
Prerequisites
|
|
|
Course Contents (description) |
1. Introduction 1.1 Computer Components: Hardware and Software 1.2 Computer Hardware: CPU, Memory, Storage, I/O 1.3 Computer software: System Software and Application Software 1.4 Programming Languages: High Level and Low Level Languages 1.5 Source Code and Executable code
2. Numbering systems 2.1 Decimal system 2.2 Binary system 2.3 Concept of Bit and Byte and Word 2.4 Other number systems 2.5 Hexadecimal system 2.6 Character codes: ASCII and Unicode
3. Variables, Values, Types 3.1 Data Types: Integers, characters, and floating point numbers 3.2 Variables and constants 3.3 Declaring variables in C, C++: int, char, float, long, double 3.4 Assignment statement 3.5 Introduction to Reading and writing variables: cin, cout. 3.6 Example of first C program
4. Expressions 4.1 Operator Overview: Binary and Unary operators 4.2 Precedence and Associatively 4.3 Integer division, modulus operator, floating point division 4.4 Explicit type conversion 4.5 Main and functions 4.6 Library functions
5. Program control 5.1 if statement 5.2 Loops: for loop, while loop, and do-while loop 5.3 switch statement
6. Arrays 6.1 Declaring arrays 6.2 One dimensional array 6.3 Strings as arras, to be visited again 6.4 Two and multiple dimensional arrays
7. Pointers 7.1 What is a pointer? 7.2 Addresses and pointer variables 7.3 Relating pointers to arrays 7.4 Dynamic memory allocation: new and delete 7.5 Arrays of pointers 7.6 Passing parameters: passing by value, by reference, and by pointer
8. Functions 8.1 Functions prototype and definition 8.2 Parameters 8.3 Passing parameters (will be visited again) 8.4 Local and Global variable
9. Strings 9.1 String and pointers 9.2 Dynamic string 9.3 arrays of strings 9.4 String functions
10. Structures 10.1 Definition of structures 10.2 Structure fields 10.3 Structures and pointers 10.4 Arrays of structures and arrays of pointers to structures
11. Input and Output 11.1 Standard input and output functions 11.2 Files: ASCII and binary files 11.3 File manipulations using C functions 11.4 File manipulation using C++ functions: Examples
|
|
Course Objectives |
The main objective of this course is to provide students with the theoretical background and practical experience relating to C++ programming. Students, during this course, are trained to use Visual Studio 6.0 to write their programs and test them. By cooperation with student efforts and interest, through continuous attendance to lectures and doing projects, will provide an environment that enables him to become proficient C++ programmer.
|
|
Intended learning Outcomes and Competences
|
The ability to run, test and debug programs. |
|
Textbook and References (Online Resources) |
|
|
Assessment Criteria |
Activity |
Percent (%) |
Midterm Exams |
40 |
|
Homework and quizzes |
10 |
|
Final Exam |
50 |