Programming Language C++

haya's picture
Course Code: 
66111
Course Outline: 

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

 

  • Fundamental knowledge in basic of programming.
  • The ability to write computer programs and using computing tools and packages necessary.
  • The ability to apply programming built-in and user defined functions.
  • The ability to develop programs using fundamental concepts of structured programming.
  • The ability to use software development methodology in solving programs’ problems.

The ability to run, test and debug programs.

Textbook and  References

(Online Resources)

  1. C++ How to program, Deitel & Deitel, Prentice Hall.
  2. www.cplusplus.com/

Assessment Criteria

Activity

Percent (%)

Midterm Exams

40

Homework and  quizzes

10

Final Exam

50