The C Programming Language course syllabus associate level



Similar documents
KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

C++ Programming Language

El Dorado Union High School District Educational Services

PROBLEM SOLVING SEVENTH EDITION WALTER SAVITCH UNIVERSITY OF CALIFORNIA, SAN DIEGO CONTRIBUTOR KENRICK MOCK UNIVERSITY OF ALASKA, ANCHORAGE PEARSON

Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies)

C++ INTERVIEW QUESTIONS

Glossary of Object Oriented Terms

Java (12 Weeks) Introduction to Java Programming Language

PART-A Questions. 2. How does an enumerated statement differ from a typedef statement?

Facebook Twitter YouTube Google Plus Website

Object Oriented Software Design II

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science

Embedded Systems. Review of ANSI C Topics. A Review of ANSI C and Considerations for Embedded C Programming. Basic features of C

Java Application Developer Certificate Program Competencies

An Incomplete C++ Primer. University of Wyoming MA 5310

Sources: On the Web: Slides will be available on:

Fundamentals of Java Programming

Memory management. Announcements. Safe user input. Function pointers. Uses of function pointers. Function pointer example

5 Arrays and Pointers

Habanero Extreme Scale Software Research Project

Moving from CS 61A Scheme to CS 61B Java

#820 Computer Programming 1A

Illustration 1: Diagram of program function and data flow

Multichoice Quetions 1. Atributes a. are listed in the second part of the class box b. its time is preceded by a colon. c. its default value is

Computer Programming I

Computer Programming I & II*

Embedded Programming in C/C++: Lesson-1: Programming Elements and Programming in C

Objectif. Participant. Prérequis. Remarque. Programme. C# 3.0 Programming in the.net Framework. 1. Introduction to the.

Name: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program.

How To Port A Program To Dynamic C (C) (C-Based) (Program) (For A Non Portable Program) (Un Portable) (Permanent) (Non Portable) C-Based (Programs) (Powerpoint)

Informatica e Sistemi in Tempo Reale

RARITAN VALLEY COMMUNITY COLLEGE ACADEMIC COURSE OUTLINE. CISY 105 Foundations of Computer Science

Curriculum Map. Discipline: Computer Science Course: C++

Management Information Systems 260 Web Programming Fall 2006 (CRN: 42459)

Tutorial on C Language Programming

Object Oriented Programming With C++(10CS36) Question Bank. UNIT 1: Introduction to C++

Storage Classes CS 110B - Rule Storage Classes Page 18-1 \handouts\storclas

Java Interview Questions and Answers

Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation

Course Title: Software Development

C Programming. for Embedded Microcontrollers. Warwick A. Smith. Postbus 11. Elektor International Media BV. 6114ZG Susteren The Netherlands

AP Computer Science Java Subset

Java Programming Fundamentals

How To Write Portable Programs In C

BCS2B02: OOP Concepts and Data Structures Using C++

MISRA-C:2012 Standards Model Summary for C / C++

Certified PHP Developer VS-1054

Programming and Software Development CTAG Alignments

Evolution of the Major Programming Languages

Web Development in Java

The Designer's Guide to VHDL

As previously noted, a byte can contain a numeric value in the range Computers don't understand Latin, Cyrillic, Hindi, Arabic character sets!

Syllabus for CS 134 Java Programming

6.088 Intro to C/C++ Day 4: Object-oriented programming in C++ Eunsuk Kang and Jean Yang

: provid.ir

Object Oriented Software Design II

Chapter 13 - The Preprocessor

Computer Programming I

OpenCL Static C++ Kernel Language Extension

Crash Course in Java

An Introduction to Programming and Computer Science

ALLIED PAPER : DISCRETE MATHEMATICS (for B.Sc. Computer Technology & B.Sc. Multimedia and Web Technology)

The System Designer's Guide to VHDL-AMS

Fundamentals of Programming and Software Development Lesson Objectives

core. Volume I - Fundamentals Seventh Edition Sun Microsystems Press A Prentice Hall Title ULB Darmstadt

Semantic Analysis: Types and Type Checking

TECHNOLOGY Computer Programming II Grade: 9-12 Standard 2: Technology and Society Interaction

C++FA 5.1 PRACTICE MID-TERM EXAM

C Interview Questions

GUJARAT TECHNOLOGICAL UNIVERSITY, AHMEDABAD, GUJARAT COURSE CURRICULUM. Course Title: Advanced Computer Programming (Code: )

Scoping (Readings 7.1,7.4,7.6) Parameter passing methods (7.5) Building symbol tables (7.6)

The programming language C. sws1 1

High-Level Language. Building a Modern Computer From First Principles.

Embedded C Programming, Linux, and Vxworks. Synopsis

Chapter 1. Dr. Chris Irwin Davis Phone: (972) Office: ECSS CS-4337 Organization of Programming Languages

C++ Language Tutorial

OKLAHOMA SUBJECT AREA TESTS (OSAT )

Simple C++ Programs. Engineering Problem Solving with C++, Etter/Ingber. Dev-C++ Dev-C++ Windows Friendly Exit. The C++ Programming Language

Keil C51 Cross Compiler

About The Tutorial. Audience. Prerequisites. Copyright & Disclaimer

Chapter 5 Names, Bindings, Type Checking, and Scopes

Boolean Expressions, Conditions, Loops, and Enumerations. Precedence Rules (from highest to lowest priority)

Visual Basic. murach's TRAINING & REFERENCE

Programming Language Inter-conversion

Subject Name: Object Oriented Programming in C++ Subject Code:

VB.NET Programming Fundamentals

Basic Programming and PC Skills: Basic Programming and PC Skills:

Module 816. File Management in C. M. Campbell 1993 Deakin University

C Compiler Targeting the Java Virtual Machine

Virtuozzo Virtualization SDK

Java CPD (I) Frans Coenen Department of Computer Science

Phys4051: C Lecture 2 & 3. Comment Statements. C Data Types. Functions (Review) Comment Statements Variables & Operators Branching Instructions

Keywords are identifiers having predefined meanings in C programming language. The list of keywords used in standard C are : unsigned void

AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping

Chapter 6: Programming Languages

CpSc212 Goddard Notes Chapter 6. Yet More on Classes. We discuss the problems of comparing, copying, passing, outputting, and destructing

Software Engineering Concepts: Testing. Pointers & Dynamic Allocation. CS 311 Data Structures and Algorithms Lecture Slides Monday, September 14, 2009

WORKSPACE WEB DEVELOPMENT & OUTSOURCING TRAINING CENTER

Transcription:

TECHNOLOGIES The C Programming Language course syllabus associate level Course description The course fully covers the basics of programming in the C programming language and demonstrates fundamental programming techniques, customs and vocabulary including the most common library functions and the usage of the preprocessor. Learning objectives To familiarize the trainee with basic concepts of computer programming and developer tools. To present the syntax and semantics of the C language as well as data types offered by the language To allow the trainee to write their own programs using standard language infrastructure regardless of the hardware or software platform Course outline Introduction to compiling and software development Basic scalar data types and their operators Flow control Complex data types: arrays, structures and pointers Structuring the code: functions and modules Preprocessing source code Chapters: Absolute basics Languages: natural and artificial Machine languages High-level programming languages Obtaining the machine code: compilation process Recommended readings Your first program Variable why? Integer values in real life and in C, integer literals Data types Floating point values in real life and in C, float literals Arithmetic operators Priority and binding Post- and pre -incrementation and -decrementation Operators of type op=

TECHNOLOGIES Char type and ASCII code, char literals Equivalence of int and char data Comparison operators Conditional execution and if keyword printf() and scanf() functions: absolute basics Flow control Conditional execution continued: the else branch More integer and float types Conversions why? Typecast and its operators Loops while, do and for Controlling the loop execution break and continue Logical and bitwise operators Arrays Switch: different faces of if Arrays (vectors) why do you need them? Sorting in real life and in a computer memory Initiators: a simple way to set an array Pointers: another kind of data in C An address, a reference, a dereference and the sizeof operator Simple pointer and pointer to nothing (NULL) & operator Pointers arithmetic Pointers vs. arrays: different forms of the same phenomenon Using strings: basics Basic functions dedicated to string manipulation Memory management and structures The meaning of array indexing The usage of pointers: perils and disadvantages Void type Arrays of arrays and multidimensional arrays Memory allocation and deallocation: malloc() and free() functions Arrays of pointers vs. multidimensional arrays Structures why? Declaring, using and initializing structures Pointers to structures and arrays of structures Basics of recursive data collections

Functions TECHNOLOGIES Functions why? How to declare, define and invoke a function Variables' scope, local variables and function parameters Pointers, arrays and structures as function parameters Function result and return statement Void as a parameter, pointer and result Parameterzing the main function External function and the extern declarator Header files and their role Files and streams Files vs. streams: where does the difference lie? Header files needed for stream operations FILE structure Opening and closing a stream, open modes, errno variable Reading and writing to/from a stream Predefined streams: stdin, stdout and stderr Stream manipulation: fgetc(), fputc(), fgets() and fputs() functions Raw input/output: fread() and fwrite() functions Preprocessor and complex declarations Preprocessor why? #include: how to make use of a header file #define: simple and parameterized macros #undef directive Predefined preprocessor symbols Macro operators: # and ## Conditional compilation: #if and #ifdef directives Avoiding multiple compilations of the same header files Scopes of declarations, storage classes User defined types-why? Pointers to functions Analyzing and creating complex declarations

TECHNOLOGIES Syllabus for C++ Programming Language C++ programming language Description: In this class, we will learn the basics about C++ programming language such as variables, data types, arrays, pointers, functions and classes etc. Objective: At the end of the class, we expect people to have a good understanding about the concept of object-oriented programming using C++, be able to write and read basic C++ code. Prerequisite: No prior knowledge about C++ is required, but people are expected to have some basic knowledge about computers, some knowledge about one or two other programming languages such as Perl, PHP, Python or Java etc is preferred. Course Outlines: Introduction What is C++? Why C++? C and C++ Exception Handling Object Oriented Programming Standard Template Library Types and declarations Types Booleans Integer Types Floating-Point Types Sizes Void Enumerations

Declarations TECHNOLOGIES Pointers, Arrays and Structures Pointers Arrays Pointers into Arrays Constants References Pointers to void Structures Expressions and Statements A Deck Calculator Operator Summary Statement Summary Comments and Indentation Functions Function Declarations Argument Passing Value Return Overloaded Function Names Default Arguments Pointer to Function Macros Namespaces and Exceptions Namespaces Exceptions Source Files and Programs Separate Compilation Linkage Using Header Files Programs

Classes TECHNOLOGIES Classes Access Control Constructors Member functions Static members Destructors Memory allocation Member initialization Operator overloading Introduction Operator Functions A Complete Number Type Conversion Operators Friends Large Objects Essential Operators Subscripting Functions Calls Dereferencing Increment and Decrement A String Class Derived class Introduction Derived Classes Abstract Classes Design of Class Hierarchies Class Hierarchies and Abstract Classes