P.E.S.
College of Engineering, Mandya
Department of Computer Science & Engineering
Academic Year: 2025-26 Semester: I Scheme: P25
Course Title: Programming in C
Course Code: P25PSC1055 CIE Marks:50 CIE Weightage:50%
Teaching hours/week (L: T: P): [Link] SEE Marks:50 SEE Weightage:50%
Teaching hours of Pedagogy:40 Exam Hours: 3 Hrs
Credits:3
Course learning Objectives:
At the end of the course, the student will be able to:
CO1: Demonstrate fundamental concepts and language constructs of C programming.
CO2: Make use of control structures and arrays to solve basic computational problems.
CO3: Develop modular programs using user-defined functions for complex computational problems.
CO4: Construct user defined data types using structures, unions and enumerations to model simple
real- world scenarios.
CO5: Choose suitable data types and language constructs to solve a given computational or real-
world problem
Unit 1 8 Hours
Introduction to Computing: Computer languages, Creating and Running Programs, System
Development.
Overview of C: A Brief History of C, C Is a Middle-Level Language, C Is a Structured Language, C
Is a Programmer's Language, Compilers Vs. Interpreters, The Form of a C Program, The Library
and Linking, Separate Compilation, Compiling a C Program, C's Memory Map.
Expressions: The Basic Data Types, Modifying the Basic Types, Identifier Names, Variables, The
Four C Scopes, Type Qualifiers, Storage Class Specifiers, Variable Initializations, Constants,
Operators, Expressions.
Textbook Map: Textbook 2: Chapter 1: 1.3, 1.4, 1.5; Textbook 1: Chapter 1, 2
Unit 2 8 Hours
Console I/O: Reading and Writing Characters, Reading and Writing Strings, Formatted Console
I/O, printf(), scanf().
Statements: True and False in C, Selection Statements, Iteration Statements, Jump Statements,
Expression Statements, Block Statements.
Textbook Map: Textbook 1: Chapter 8, 3
Unit 3 8 Hours
Arrays and Strings: Single-Dimension Arrays, generating a Pointer to an Array, Passing Single-
Dimension Arrays to Functions, Strings, Two-Dimensional Arrays, Multidimensional Arrays,
Array Initialization, Variable - Length Arrays.
Pointers: What Are Pointers? Pointer Variables, The Pointer Operators, Pointer Expressions,
Pointers and Arrays, Multiple, Indirection, Initializing Pointers.
Textbook Map: Textbook 1: Chapter 4, 5
Unit 4 8 Hours
Functions: The General Form of a Function, Understanding the Scope of a Function, Function
Arguments, argc and argv—Arguments to main (), The return Statement, What Does main()
P25 Scheme - I & II Semester Syllabus Page7
P.E.S. College of Engineering, Mandya
Department of Computer Science & Engineering
Return? Recursion, Function Prototypes, Declaring Variable Length Parameter Declarations, The
inline Keyword.
Pointers (Contd…): Pointers to Functions, C's Dynamic Allocation Functions.
Textbook Map: Textbook 1: Chapter 5, Chapter 6
Unit 5 8 Hours
Structures, Unions, Enumerations, and typedef: Structures, Arrays of Structures, Passing
Structure to Functions, Structure Pointers, Arrays and Structures within Structures, Unions, Bit-
Fields, Enumerations, using size of to Ensure Portability, typedef.
Textbook Map: Textbook 1: Chapter 7
Suggested Learning Resources:
Textbooks:
1 Schildt, Herbert. C the complete reference 4th Edition Mc GrawHill.
Hassan Afyouni, Behrouz A Structured Programming
2 4th Edition Cengage
A. Forouzan Approach in C
Reference Books:
Brian W. Kernighan and The ‘C’ Programming Prentice Hall of
1. 2nd Edition
Dennis M. Ritchie Language India
Oxford University
2 Reema Thareja Programming in C 3rd Edition
Press, 2023
Web links and Video Lectures (e-Resources):
1. [Link]/econtent/courses/video/BS/[Link]
2. Introduction to Programming in C [[Link]
3. C for Everyone: Programming Fundamentals [[Link]
4. Computer Programming Virtual Lab [[Link]
5. C Programming: The ultimate way to learn the fundamentals of the C language
[[Link]
[Link]]
6. C Programming: The Complete Reference [[Link]
language/attachment/28313/c-the-complete-reference-herbert-schildt-4th-edition-pdf/preview]
7. [Link]
hared/overview
8. C programming Tutorial: [Link]
Teaching-Learning Process (Innovative Delivery Methods):
The following are sample strategies that educators may adopt to enhance the effectiveness of the
teaching- learning process and facilitate the achievement of course outcomes.
1. Flipped Classroom
2. Problem-Based Learning (PBL)
3. Case-Based Teaching
4. Simulation and Virtual Labs
5. ICT-Enabled Teaching
Assessment Structure:
The assessment in each course is divided equally between Continuous Internal Evaluation (CIE) and
the Semester End Examination (SEE), with each carrying 50% weightage.
P25 Scheme - I & II Semester Syllabus Page8