Monday, February 12, 2007

Mcs-011 Syllabus

Objectives

The course is aimed to develop problem-solving strategies, techniques and skills that can be applied to computers and problems in other areas which give students an introduction to computer and analytical skills to use in their subsequent course work and professional development. Develop skills to identify a problem and design appropriate solutions. Emphasis is on introduction of algorithms with the use of specific tools to illustrate the methods. Also, to acquaint the student to one of the programming language and preferably the procedural programming language i.e., C language and give them in-depth knowledge of important features of C. Techniques will be illustrated using sample problems drawn from various areas.

Syllabus

BLOCK 1: An Introduction to C

Unit 1: Problem Solving

• Problem - Solving Techniques
o Steps for Problem - Solving
o Using Computer as a Problem-Solving Tool
• Design of Algorithms
o Definition
o Features of Algorithm
o Criteria to be followed by an Algorithm
o Top Down Design
• Analysis of Algorithm Efficiency
o Redundant Computations
o Referencing Array Elements
o Inefficiency Due to Late Termination
o Early Detection of Desired Output Condition
o Trading Storage for Efficient Gains
• Analysis of Algorithm Complexity
o Computational Complexity
o The Order of Notation
o Rules for using the Big - O Notation
o Worst and Average Case Behavior
• Flowcharts
o Basic Symbols used in Flowchart Design

Unit 2: Basics of C

• What is a Program and what is a
Programming Language?
• C Language
o History of C
o Salient Features of C
• Structure of a C Program
o A Simple C Program
• Writing a C Program
• Compiling a C Program
o The C Compiler
o Syntax and Semantic Errors
• Link and Run the C Program
o Run the C Program through the Menu
o Run from an Executable File
o Linker Errors
o Logical and Runtime Errors
• Diagrammatic Representation of Program
Execution Process

Unit 3: Variables and Constants

• Character Set
• Identifiers and Keywords
o Rules for Forming Identifiers
o Keywords
• Data Types and Storage
• Data Type Qualifiers
• Variables
• Declaring Variables
• Initialising Variables
• Constants
o Integer Constants
o Floating Point Constants
o Character Constants
o String Constants
o Symbolic Constants

Unit 4: Expressions and Operators

• Assignment Statements
• Arithmetic Operators
• Relational Operators
• Logical Operators
• Comma and Conditional Operators
• Type Cast Operator
• Size of Operator
• C Shorthand
• Priority of Operators

BLOCK 2: Control Statements, Arrays and Functions

Unit 5: Decision and Loop Control Statements

• Decision Control Statements
o The if Statement
o The switch Statement
• Loop Control Statements
o The while Loop
o The do-while Statement
o The for Loop
o The Nested Loop
• The Goto Statement
• The Break Statement
• The Continue Statement

Unit 6: Arrays

• Array Declaration
o Syntax of Array Declaration
o Size Specification
• Array Initialization
o Initialization of Array Elements in the Declaration
o Character Array Initialization
• Subscript
• Processing the Arrays
• Multi-Dimensional Arrays
o Multi-Dimensional Array Declaration
o Initialization of Two-Dimensional Arrays

Unit 7: Strings

• Declaration and Initialization of Strings
• Display of Strings Using Different Formatting Techniques
• Array of Strings
• Built-in String Functions and Applications
o Strlen Function
o Strcpy Function
o Strcmp Function
o Strcat Function
o Strlwr Function
o Strrev Function
o Strspn Function
• Other String Functions

Unit 8: Functions

• Definition of a Function
• Declaration of a Function
• Function Prototypes
• The Return Statement
• Types of Variables and Storage Classes
o Automatic Variables
o External Variables
o Static Variables
o Register Variables
• Types of Function Invoking
• Call by Value
• Recursion

BLOCK 3: Structures, Pointers and File
Handling

Unit 9: Structures and Unions

• Declaration of Structures
• Accessing the Members of a Structure
• Initializing Structures
• Structures as Function Arguments
• Structures and Arrays
• Unions
• Initializing an Union
• Accessing the Members of an Union

Unit 10: Pointers

• Pointers and their Characteristics
• Address and Indirection Operators
• Pointer Type Declaration and Assignment
o Pointer to a Pointer
o Null Pointer Assignment
• Pointer Arithmetic
• Passing Pointers to Functions
o A Function Returning More than One Value
o Function Returning a Pointer
• Arrays and Pointers
• Array of Pointers
• Pointers and Strings

Unit 11: The C Preprocessor

• # define to Implement Constants
• # define to Create Functional Macros
• Reading from Other Files using # include
• Conditional Selection of Code using #ifdef
o Using #ifdef for different computer types
o Using #ifdef to temporarily remove program statements
• Other Preprocessor Commands
• Predefined Names Defined by Preprocessor
• Macros Vs Functions

Unit 12: Files

• File Handling in C Using File Pointers
o Open a file using the function fopen ( )
o Close a file using the function fclose( )
• Input and Output using file pointers
o Character Input and Output in Files
o String Input / Output Functions
o Formatted Input / Output Functions
o Block Input / Output Functions
• Sequential Vs Random Access Files
• Positioning the File Pointer
• The Unbufferred I/O - The UNIX like File Routines

»arshad«

No comments: