BSc.CSIT Introduction to Information Technology C Programming Digital Logic Mathematics I (Calculus) Physics Discrete Structures Object Oriented Programming Microprocessor Statistics I Mathematics II Data Structures and Algorithms Numerical Method Computer Architecture Computer Graphics Statistics II Theory of Computation Computer Networks Operating Systems Database Management System Artificial Intelligence Multimedia Computing Web Technology System Analysis and Design Wireless Networking Microprocessor Based Design Society and Ethics in Information Technology Knowledge Management Design and Analysis of Algorithms Simulation and Modelling Image Processing Cryptography Software Engineering Compiler Design and Construction E-Governance NET Centric Computing Technical Writing Applied Logic E-commerce Automation and Robotics Neural Networks Computer Hardware Design Cognitive Science Advanced Java Programming Data Warehousing and Data Mining Principles of Management Project Work Information Retrieval Database Administration Software Project Management Network Security Digital System Design Network and System Administration International Marketing Advanced Database Internship Advanced Networking with IPv6 Distributed Networking Game Technology Distributed and Object Oriented Database Introduction to Cloud Computing Geographical Information System Decision Support System and Expert System Mobile Application Development Embedded Systems Programming International Business Management

C Programming

Course Contents

Unit 1: Problem Solving with Computer (2 Hrs.)

  • Problem Analysis
  • Algorithms and Flowchart
  • Coding, Compilation, and Execution
  • History of C
  • Structure of a C Program
  • Debugging, Testing, and Documentation

Unit 2: Elements of C (4 Hrs.)

  • C Standards (ANSI C and C99)
  • C Character Set
  • C Tokens
  • Escape Sequences and Delimiters
  • Variables and Data Types (Basic, Derived, and User Defined)
  • Structure of a C Program
  • Executing a C Program
  • Constants/Literals
  • Expressions, Statements, and Comments

Unit 3: Input and Output (2 Hrs.)

  • Conversion Specification
  • Reading and Writing Characters
  • I/O Operations
  • Formatted I/O

Unit 4: Operators and Expressions (4 Hrs.)

  • Arithmetic Operators
  • Relational Operators
  • Logical (Boolean) Operators
  • Assignment Operators
  • Ternary Operator
  • Bitwise Operators
  • Increment and Decrement Operators
  • Conditional Operator
  • Special Operators (sizeof and comma)
  • Evaluation of Expressions
  • Operator Precedence and Associativity

Unit 5: Control Statements (4 Hrs.)

  • Conditional Statements
  • Decision Making and Branching
  • Decision Making and Looping
  • Exit Function
  • Break and Continue

Unit 6: Arrays (6 Hrs.)

  • Introduction to Arrays
  • Types of Arrays (Single Dimensional and Multidimensional)
  • Declaration and Memory Representation of Arrays
  • Initialization of Arrays
  • Character Arrays and Strings
  • Reading and Writing Strings
  • Null Character
  • String Library Functions (String Length, String Copy, String Concatenation, String Compare)

Unit 7: Functions (5 Hrs.)

  • Library Functions
  • User-Defined Functions
  • Function Prototype, Function Call, and Function Definition
  • Nested and Recursive Functions
  • Function Arguments and Return Types
  • Passing Arrays to Functions
  • Passing Strings to Functions
  • Passing Arguments by Value and by Address
  • Scope, Visibility, and Lifetime of Variables
  • Local and Global Variables

Unit 8: Structure and Union (5 Hrs.)

  • Introduction to Structures
  • Array of Structures
  • Passing Structures to Functions
  • Passing Arrays of Structures to Functions
  • Nested Structures
  • Union
  • Pointer to Structure

Unit 9: Pointers (6 Hrs.)

  • Introduction to Pointers
  • The & and * Operators
  • Declaration of Pointers
  • Chain of Pointers
  • Pointer Arithmetic
  • Pointers and Arrays
  • Pointers and Character Strings
  • Array of Pointers
  • Pointers as Function Arguments
  • Functions Returning Pointers
  • Pointers and Structures
  • Dynamic Memory Allocation

Unit 10: File Handling in C (4 Hrs.)

  • Concept of Files
  • Opening and Closing Files
  • Input and Output Operations in Files
  • Random Access in Files
  • Error Handling in Files

Unit 11: Introduction to Graphics (3 Hrs.)

  • Concepts of Graphics
  • Graphics Initialization and Modes
  • Graphics Functions

Laboratory Works

This course requires extensive programming practice. Each topic must be accompanied by a practical session, including:

  • Creating, compiling, and running simple C programs
  • Handling different data types available in C
  • Performing arithmetic operations
  • Formatted input and output operations
  • Character input and output operations
  • Logical operations, decision-making programs, and loops
  • User-defined and recursive functions
  • Automatic, global, and static variables
  • Arrays and matrices (single and multidimensional)
  • Pointers, dynamic memory allocation, and deallocation
  • String manipulation using various string handling functions
  • Structures and files for record-keeping (students, employees, etc.)

Text Books

  1. Byron Gottfried: Programming with C, Second Edition, McGraw Hill Education
  2. Herbert Schildt: C The Complete Reference, Fourth Edition, Osborne/McGraw Hill Publication

Reference Books

  1. Paul Deitel, Harvey Deitel: C: How to Program, Eighth Edition, Pearson Publication
  2. Al Kelley, Ira Pohl: A Book on C, Fourth Edition, Pearson Education
  3. Brian W. Kernighan, Dennis M. Ritchie: The C Programming Language, Second Edition, PHI Publication
  4. Ajay Mittal: Programming in C: A Practical Approach, Pearson Publication
  5. Stephen G. Kochan: Programming in C, CBS Publishers & Distributors
  6. E. Balagurusamy: Programming in ANSI C, Third Edition, TMH Publishing
No Comment
Add Comment
comment url