This module constitutes the second part of the Computer Programming and it is a continuation of what it was convered in COMP 10110 (Computer Programming I). Some concepts which were already covered in the first semester will be studied here in details. In addition we will look at some other consepts which were not introduced so far, such as pointers, arrays, structures and unions, structures and list processing, functions, the C pre-processor, advanced Input/Output functions. We will see also the standard libraries and how to move from C to C++ and Java; 2 very popular object oriented programming languages.A strong emphasis is placed on the development of practical programming skills, for building software applications. The course is designed to give a sound understanding of the programming techniques, and how to get your application programs from the design phase to its implementation.