Course Objectives:
- 1. Impart in-depth knowledge on the need of programming languages, problem-solving techniques, and program development skills.
- 2. Enable effective use of control structures and implement different operations on arrays.
- 3. Demonstrate the use of strings and functions.
- 4. Impart knowledge of pointers and memory allocation principles in C.
- 5. Understand structures, unions, and perform file operations in C.
Course Outcomes:
- CO1: Illustrate fundamental concepts of computers and basics of computer programming.
- CO2: Demonstrate control structures, branching, and looping statements.
- CO3: Demonstrate arrays and pointers in solving complex problems.
- CO4: Develop modular programs using functions and strings.
- CO5: Demonstrate user-defined data types, solve real-world problems using structures, unions, and file operations.
UNIT I – Introduction to Computer Problem Solving
Programs and Algorithms, Problem Solving Requirements & Strategies
- Programs and Algorithms, Computer Problem Solving Requirements, Phases of Problem Solving, Problem Solving Strategies, Top-Down Approach, Algorithm Designing, Program Verification, Improving Efficiency, Algorithm Analysis and Notations.
UNIT II – Introduction to C Programming
C Program Structure, Comments, Keywords, Variables, Data Types
- Introduction, Structure of a C Program, Comments, Keywords, Identifiers, Data Types, Variables, Constants, Input/output Statements. Operators, Type Conversion. Control Flow, Relational Expressions: Conditional Branching Statements: if, if-else, if-else—if, switch. Basic Loop Structures: while, do-while loops, for loop, nested loops, The Break and Continue Statements, goto statement.
UNIT III – Arrays
One-Dimensional and Multi-Dimensional Arrays, Pointers
- Introduction, Operations on Arrays, Arrays as Function Arguments, Two Dimensional Arrays, Multidimensional Arrays. Pointers: Concept of a Pointer, Declaring and Initializing Pointer Variables, Pointer Expressions and Address Arithmetic, Null Pointers, Generic Pointers, Pointers as Function Arguments, Pointers and Arrays, Pointer to Pointer, Dynamic Memory Allocation, Dangling Pointer, Command Line Arguments.
UNIT IV – Functions
Function Declaration, Recursion, Scope, Storage Classes
- Introduction Function: Declaration, Function Definition, Function Call, Categories of Functions, Passing Parameters to Functions, Scope of Variables, Variable Storage Classes. Recursion. Strings: String Fundamentals, String Processing with and without Library Functions, Pointers and Strings.
UNIT V – Structures and Files
Bit Fields, Nested Structures, Arrays of Structures, Unions, Self-Referential Structures
- Structures, Unions, Bit Fields: Introduction, Nested Structures, Arrays of Structures, Structures and Functions, Self-Referential Structures, Unions, Enumerated Data Type —Enum variables, Using Typedef keyword, Bit Fields. Data Files: Introduction to Files, Using Files in C, Reading from Text Files, Writing to Text Files, Random File Access.
Textbooks
- A Structured Programming Approach Using C, Forouzan & Gilberg, Cengage.
- How to Solve it by Computer, R.G. Dromey, Pearson.
- Programming in C: A Practical Approach, Ajay Mittal, Pearson.
- Byron Gottfried, Schaum’s Outline of Programming with C, McGraw-Hill.
- Reema Thareja, Computer Programming, Oxford University Press.
- The C Programming Language, Kernighan & Ritchie, Pearson.
- http://www.c4learn.com/
- http://www.geeksforgeeks.org/c/
- https://nptel.ac.in/courses/122104019/
- http://www.learn-c.org/
No comments