BSc. CSIT First Semester C Programming Course Overview

 

First Semester C Programming Course Overview


Title C Programming
Course code CSC110
Nature of course Theory + Lab
Semester First-Semester
Full marks 60 + 20 + 20
Pass marks 24 + 8 + 8
Credit Hrs 3
Elective/Compulsory Compulsory

Study Materials:

Notes Books Old Questions

Course Description:

This course covers the concepts of structured programming using C programming language.

Course Objectives:

This course is designed to familiarize students to the techniques of programming in C.

Course Content:


  1. Problem Solving with Computer
    Teaching Hours : 2 hrs
    Problem analysis, Algorithms and Flowchart, Coding, Compilation and Execution, History of C, Structure of C program, Debugging, Testing and Documentation

  2. Elements of C
    Teaching Hours : 4 hrs
    C Standards( ANSI C and C99), C Character Set, C Tokens, Escape sequence, Delimiters, Variables, Data types (Basic, Derived, and User Defined), Structure of a C program, Executing a C program, Constants/ Literals, Expressions, Statements and Comments

  3. Input and Output
    Teaching Hours : 2 hrs
    Conversion specification, Reading a character, Writing a character, I/O operations, Formatted I/O

  4. Operators and Expression
    Teaching Hours : 4 hrs
    Arithmetic operator, Relational operator, Logical or Boolean operator, Assignment Operator, Ternary operator, Bitwise operator, Increment or Decrement operator, Conditional operator, Special Operators(sizeof and comma), Evaluation of Expression, Operator Precedence and Associativity

  5. Control Statement
    Teaching Hours : 4 hrs
    Conditional Statements, Decision Making and Branching, Decision Making and Looping, Exit function, Break and Continue

  6. Arrays
    Teaching Hours : 6 hrs
    Introduction to Array, Types of Array (Single Dimensional and Multidimensional), Declaration and Memory Representation of Array, Initialization of array, Character Array and Strings, Reading and Writing Strings, Null Character, String Library Functions( string length, string copy, string concatenation, string compare)

  7. Functions
    Teaching Hours : 5 hrs
    Library Functions, User defined functions, Funciton prototype, Function call, and Function Definition, Nested and Recursive Function, Function Arguments and Return Types, Passing 4 Arrays to Function, Passing Strings to Function, Passing Arguments by Value, Passing Arguments by Address, Scope visibility and lifetime of a variable, Local and Global Variable

  8. Structure and Union
    Teaching Hours : 5 hrs
    Introduction, Array of structure, Passing structure to function, Passing array of structure to function, Structure within structure ( Nested Structure), Union, Pointer to structure

  9. Pointers
    Teaching Hours : 6 hrs
    Introduction, The & and * operator, Declaration of pointer, Chain of Pointers, Pointer Arithmetic, Pointers and Arrays, Pointers and Character Strings, Array of Pointers, Pointers as Function Arguments, Function Returning pointers, Pointers and Structures, Dynamic Memory Allocation

  10. File Handling in C
    Teaching Hours : 4 hrs
    Concept of File, Opening and closing of File, Input Output Operations in File, Random access in File, Error Handling in Files

  11. Introduction to Graphics
    Teaching Hours : 3 hrs
    Concepts of Graphics, Graphics Initialization and Modes, Graphics Function

Laboratory Works:

This course requires a lot of programming practices. Each topic must be followed by a practical session. Some practical sessions include programming to:
  1. Create, compile and run simple C programs, handle different data types available in C, perform arithmetic operations in C, perform formatted input and output operations, perform character input and output operations.
  2. Perform logical operations, create decision-making programs, create loops to repeat task.
  3. Create user-defined functions, create recursive functions, work with automatic, global and static variables, create, manipulate arrays and matrices (single and multi-dimensional), work with pointes, dynamically allocate de-allocate storage space during runtime, manipulate strings (character arrays) using various string handling functions.
  4. Create and use structures and files to keep record of 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/McGrawHill 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. Keringhan, Dennis M. Ritchiem, 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