Course Details

Subject {L-T-P / C} : CS1000 : Basic Programming {1-0-2 / 2}
Subject Nature : Practical
Coordinator : Prof. Ramesh Kumar Mohapatra

Syllabus

Basics of Programming Languages: Procedural Language, Role of Compiler, Interpreter, Assembler. The Structure of a programming language. Writing and executing a Program. Program Debugging. Data Type, Variable, Operators, Control Statement, Pre-processor Directives Input and Output Operators, Reading/Writing Characters, Formatted input/output Function. Control Statement: The IF.....ELSE Statement, IF......ELSE ladder, Nesting of IF.....ELSE Statements, The Switching Statements ,The do-while Statement , The while statement, for Statements, Switch case. Array in C: Array: What and Why? One Dimensions Arrays, Two Dimensions Arrays, Multi Dimensions Arrays, Dynamic Arrays. String Handling: Reading String from Terminal, Writing String to Screen, String Handling Functions. Function in C: Function Basics, Advantage of Function, Recursion, Variable Storage Classes, Variable arguments Function. Pointers in C: Understanding Pointers, Pointer expressions, Pointer and Arrays, Pointers and Character String, Pointers to Functions. Structures and Unions: Defining a Structure, Advantage of Structure, Size of Structure, Arrays of Structures, Structures and Functions, Defining Unions. Dynamic Memory allocation: Introduction to Dynamic Memory Allocation, malloc(), calloc(), realloc(), free(). File Management in C: Introduction to File Management, Opening/Closing a File , Input/Output operations on Files, Error Handling During I/O Operations, Command Line Arguments. Pre-processor: Macro Substitution, File Inclusion, Computer Control Directives.

Course Objectives

  1. Basic understanding of computers, the concept of algorithm and creating the ability to analyze a problem, develop an algorithm to solve it.
  2. Write the program on a computer, edit, compile, debug, correct, recompile and run it.
  3. The program coding techniques for the implementation of various real life problems.

Course Outcomes

The course aims to provide exposure to problem-solving through programming. It aims to make the student understand the basic concepts of a programming language. This course involves a lab component which is designed to give the student hands-on practice with the concepts.

Essential Reading

  1. Brian W. Kernighan and Dennis M. Ritchie, The C Programming Language, Pearson Education India
  2. Byron Gottfried, Schaum's Outline of Programming with C, McGraw-Hill

Supplementary Reading

  1. R.Geoff Dromey, How to Solve it by Computer, Prentice-Hall
  2. Herbert Schildt, C: The Complete Reference, McGraw Hill Education