0% found this document useful (0 votes)
116 views4 pages

Handout

This document provides details about a Computer Programming course, including: - The course aims to introduce basic data representation, processing data using C programming language, and systematic techniques for constructing programs. - Topics covered include data types, conditionals, loops, functions, arrays, structures, pointers, dynamic memory management, linked lists, stacks, queues, strings, files, and recursion. - Reference books provided for additional reading include texts on C programming, computer systems, Unix commands, and data structures. - The course plan lists specific modules and learning outcomes to be covered in each lecture session, referencing chapters from the primary textbook.

Uploaded by

Aman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
116 views4 pages

Handout

This document provides details about a Computer Programming course, including: - The course aims to introduce basic data representation, processing data using C programming language, and systematic techniques for constructing programs. - Topics covered include data types, conditionals, loops, functions, arrays, structures, pointers, dynamic memory management, linked lists, stacks, queues, strings, files, and recursion. - Reference books provided for additional reading include texts on C programming, computer systems, Unix commands, and data structures. - The course plan lists specific modules and learning outcomes to be covered in each lecture session, referencing chapters from the primary textbook.

Uploaded by

Aman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, Pilani

Pilani Campus
AUGS/ AGSR Division

1st Sem 2022-23


COURSE HANDOUT
Date: 30.08.2022

In addition to part I (General Handout for all courses appended to the Time table) this portion gives further
specific details regarding the course.
Course No : CS F111
Course Title : Computer Programming
Instructor-in-Charge : Dr. Jagat Sesh Challa
Instructor(s) : Dr. Jagat Sesh Challa ([email protected])
Dr. Ashutosh Bhatia ([email protected])
Dr. Tejasvi Alladi ([email protected]
Practical Instructors : Ms. Aarti ([email protected])

1. Course Description: The primary goals of the course are to introduce:


● Basic representation of data and how to process data using the representation inside a computer.
● Techniques for specifying data, operations on data, and problem-solving using C programming language.
● Systematic techniques and approaches for constructing programs.

2. Scope and Objective of the Course: The course covers the following topics: Basic Model of a Computer;
Problem Solving – Basic Computing Steps and Flow. Programming Constructs – Expressions,
Statements, Conditionals, Iterators/Loops, Functions/Procedures; Data Types – Primitive Types, Tuples,
Lists/Arrays, Pointers and Dynamically Allocated Data. Input output and Files.

3. Text Books:
T1: Hanly, J.R. and E.B. Koffman. Problem Solving and Program Design in C(7/e). Pearson
Education, 2013.

4. Reference Books:
R1: Patt, Yale. Introduction to Computing Systems: From bits & gates to C &beyond (2/e). McGraw
Hill Education, 2017.
The authors take a bottom-up approach to introduce computers and computing.

R2: Forouzan, B.A. and Richard F. Gilberg . Computer science A structured programming approach
using C (3/e). Cengage Learning, 2007.
The book gives a fairly comprehensive overview of C, with several example programs.

R3: Gottfried, B.S. and Jitender Chhabra. Programming with C (Schaum's Outlines Series, 3/e).
McGraw Hill Education, 2017.
Another beginner’s book on C programming, with lots of drill exercises and programs.

R4: Kernighan, B.W and Dennis Ritchie. The C Programming Language (2/e). Pearson Education
India, 2015.
Considered the ultimate treatise on C, it conveys the philosophy and practice of C very tersely, but is pitched
at an advanced beginner level.
1
BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, Pilani
Pilani Campus
AUGS/ AGSR Division

R5: Das, S. Unix: Concepts and Applications (4/e). McGraw Hill Education, 2017.
Provides a great introduction to using Unix commands.

R6: Das, Sumitabha. Computer Fundamentals and C Programming. New Delhi,


India: McGraw Hill Education. (2018)

5. Course Plan:
Module No. Lecture Session Reference Learning outcomes
L1 Students get the
Introduction to Programming; the need motivation behind
for programming; overview of computers programming, and
01 T1: 1.1-1.3
understand a broad
and computing
overview of computing,
computer organization
L2
02 How to express a problem using Class Notes Students can write simple
flowcharts and algorithms C programs, compile and
L3 execute them in a Unix
T1: 2.4;
03 A programming example using standard environment
Class notes
input and output
L4-L6 Students will understand,
04 Internal representation of data; IEEE R1: 2.7.2 how data is represented
floating-point representation and stored in Computers
L7-L9 Students can evaluate
Data Types; variables; constants; arithmetic expressions and
05 T1: 2.1-2.2
operators and expressions specify the exact internal
data representation.
L10-11 Given an iterative or
T1: 4.1-4.3,
Statements – if… else, if… else… if, conditional, students
4.7-4.8, 5.1-
06 switch would be able to use the
5.2, 5.4-5.8
Loops – while; do…while; for; break and loop constructs / if-else
continue construct appropriately.
L12-14
T1: 3.1, 3.4-
Functions and program structure; return Given a complex problem
07 3.5, 6.1-6.4,
types; scope rules; function arguments; statement, students will be
10.1-10.4
call by value; stack vs heap memory able to logically break
L15-L18 down into simpler modules
T1: 6.1
08 Arrays, Multi-dimensional Arrays, arrays and user-defined
Class Notes
Linear Search, Binary Search, Sorting. datatypes and write a
L19-L20 modular program using
T1: 10.1 – 10.4
09 Structures, Type Definitions, functions.
Class Notes
Enumerators in C, Array of Structures

2
BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, Pilani
Pilani Campus
AUGS/ AGSR Division

L21-L24 T1: 8.1-8.5


10 Pointers; call by reference; pointer T1: 7.8-7.9,
arithmetic; arrays of pointers; 13.7 Students will be able to
L25-L28 create user-defined data
Dynamic memory management, types pertaining to a given
11 Multidimensional arrays; pointers vs. Class Notes problem, and create and
Multidimensional Arrays; command-line manipulate data structures
arguments using dynamic memory
L29-32 management. They will
Linked lists, Operations on Linked Lists, T1: 13.1-13.4 also learn about linked
12
Circular and Doubly Linked Lists, Stacks Class Notes lists, operations on linked
and Queues lists along with Strings and
L33-L34 Class Notes file handling in C.
13 String Operations, File Handling T1: 2.3, 9.1-
9.5
L35-37 Students will be able to
Recursion, C Pre-processor understand recursion and
T1:11.1 recursive style of
14
Class Notes programming. They will
also study the C Pre-
processor

6. Plan for laboratory sessions:


Lab Session No. Broad topics to be covered
Lab 1 Introduction to Operating System, Unix, Basic Unix Commands
Lab 2 Some more Unix Commands and Introduction to a text editor
Lab 3 Writing basic C programs, compiling and executing them
Writing more complex C programs with multiple data types, variables and type
Lab 4
conversions
Lab 5 Control Flow: branching, decision making, looping
Lab 6 Storage Classes, Functions with Arrays – Search and Sorting
Lab 7 Multi-file Compilation with makefile
Lab 8 Structures in C
Lab 9 Pointers, Pointer Arithmetic, Arrays, Call by reference
Lab 10 Dynamic Memory Allocation – variables, arrays, arrays of structures
Lab 11 Linked Lists
Lab 12 String Operations, File Handling, and Command-Line Arguments

3
BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, Pilani
Pilani Campus
AUGS/ AGSR Division

7. Evaluation Scheme:
Nature of component
Component Duration Marks Date & Time
(Close Book/ Open Book)
Mid-Semester Test 90 Min. 60 5/11 FN1 Closed-book
Comprehensive
180 Min. 120 29/12 FN Partly Open-book
Examination
TBA (typically a week
Quiz 45 Min. 30 Closed-book
before mid-sem)
TBA (typically a week
Programming Test 2 hours 60 Open-book
before compre)
2 hours ---
Laboratory Sessions 30 ---
each

8. Chamber Consultation Hour:

M 9. You can also contact with a prior appointment via email.


To contact the practical class instructor for consultation, you may send them an email.

9. Notices: All announcements will be done through the Nalanda LMS.

10. Make-up Policy: Make-ups are generally considered only for medical emergencies leading to
hospitalization (or a personal emergency of similar nature). The decision by the Instructor-in-Charge
regarding granting make-ups shall be final. Makeups are allowed for Mid Semester Test, Quiz, Lab Test
and Comprehensive Examination. No makeup for weekly laboratory sessions. Out of 12 lab sessions, 10
will be evaluative. Best 8 of 10 will be considered.

11. Note: Award of grades would be guided in general by the histogram of marks. If a student does not given
sufficient opportunity for being assessed, either by missing a component entirely or by not applying
oneself to the task seriously, he/she may be awarded an ‘NC’ report.

Instructor-in-charge
CS F111

You might also like