BS C-Computerscience
BS C-Computerscience
NEP-2021
And
Open Elective courses in Computer Science
The four years Bachelors in Computer Science (Hons) program enables students to
attain the following additional attributes besides the afore-mentioned attributes:
1. Apply standard Software Engineering practices and strategies in real -time
software project development
2. Design and develop computer programs/computer-based systems in the areas
related to AI, algorithms, networking, web design, cloud computing, IoT and data
analytics.
3. Acquaint with the contemporary trends in industrial/research settings and thereby
innovate novel solutions to existing problems
4. The ability to apply the knowledge and understanding noted above to the analysis
of a given information handling problem.
5. The ability to work independently on a substantial software project and as an
effective team member.
Curriculum Structure
Program: B.Sc. (Basic and Honors) Subject: Computer Science
1. Computer Science as MAJOR with another Subject as MINOR (Table IIA of Model
Curriculum)
Hour of Discipline Specific Hour of
Sem Discipline Specific Core Teaching/ Elective Courses (DSE)/ Teaching/
Courses (DSC) Week Vocational Courses (VC) Week
Theory Lab
1 DSC-1: Computer Fundamentals
and Programming in C 4
DSC-1Lab: C Programming Lab 4
* Vocational Courses:
Group-1: Group-2:
• DTP, CAD and Multimedia • Health Care Technologies
• Hardware and Server Maintenance • Digital Marketing
• Web Content Management Systems • Office Automation
• E-Commerce • Multimedia Processing
• Web Designing • Accounting Package
Course Content
Content Hours
Unit - 1
Fundamentals of Computers: Introduction to Computers - Computer Definition, 10
Characteristics Computers, Evolution and History of Computers, Types of Computers, Basic
Organisation of a Digital Computer; Number Systems – different types, conversion from one
number system to another; Computer Codes – BCD, Gray Code, ASCII and Unicode;
Boolean Algebra – Boolean Operators with Truth Tables; Types of Software – System
Software and Utility Software; Computer Languages - Machine Level, Assembly Level &
High Level Languages, Translator Programs – Assembler, Interpreter and Compiler;
Planning a Computer Program - Algorithm, Flowchart and Pseudo code with Examples. (at
least 5hrs)
Unit - 2
Introduction to C Programming: Over View of C; History and Features of C; Structure of 8
a C Program with Examples; Creating and Executing a C Program; Compilation process in
C.
C Programming Basic Concepts: C Character Set; C tokens - keywords, identifiers,
constants, and variables; Data types; Declaration & initialization of variables; Symbolic
constants.
Input and output with C: Formatted I/O functions - printf and scanf, control stings and
escape sequences, output specifications with printf functions; Unformatted I/O functions to
read and display single character and a string - getchar, putchar, gets and puts functions.
Unit - 3
C Operators & Expressions: Arithmetic operators; Relational operators; Logical 12
operators; Assignment operators; Increment & Decrement operators; Bitwise operators;
Conditional operator; Special operators; Operator Precedence and Associatively; Evaluation
of arithmetic expressions; Type conversion.
Control Structures: Decision making Statements - Simple if, if_else, nested if_else, else_if
ladder, Switch-case, goto, break & continue statements; Looping Statements - Entry
controlled and exit controlled statements, while, do-while, for loops, Nested loops.
Unit - 4
Arrays: One Dimensional arrays - Declaration, Initialization and Memory representation; 12
Two Dimensional arrays - Declaration, Initialization and Memory representation.
Strings: Declaring & Initializing string variables; String handling functions - strlen, strcmp,
strcpy and strcat; Character handling functions - toascii, toupper, tolower, isalpha,
isnumeric etc.
Pointers in C: Understanding pointers - Declaring and initializing pointers, accessing
address and value of variables using pointers; Pointers and Arrays; Pointer Arithmetic;
Advantages and disadvantages of using pointers;
Unit - 5
User Defined Functions: Need for user defined functions; Format of C user defined 10
functions; Components of user defined functions - return type, name, parameter list,
function body, return statement and function call; Categories of user defined functions -
With and without parameters and return type.
User defined data types: Structures - Structure Definition, Advantages of Structure, declaring
structure variables, accessing structure members, Structure members initialization,
comparing structure variables, Array of Structures; Unions - Union definition; difference
between Structures and Unions.
Text Books
1. Pradeep K. Sinha and Priti Sinha: Computer Fundamentals (Sixth Edition), BPB
Publication
2. E. Balgurusamy: Programming in ANSI C (TMH)
References
1. Kamthane: Programming with ANSI and TURBO C (Pearson Education)
2. V. Rajaraman: Programming in C (PHI – EEE)
3. S. ByronGottfried: Programming with C (TMH)
4. Kernighan & Ritche: The C Programming Language (PHI)
5. Yashwant Kanitkar: Let us C
6. P.B. Kottur: Programming in C (Sapna Book House)
Course Code: DSC-1Lab Course Title: C Programming Lab
Course Credits: 02 Hour of Teaching/Week: 04
Total Contact Hours: 52 Formative Assessment Marks: 10
Exam Marks: 40 Exam Duration: 04
Practice Lab
The following activities be carried out/ discussed in the lab during the initial period of the semester.
1. Basic Computer Proficiency
a. Familiarization of Computer Hardware Parts
b. Basic Computer Operations and Maintenance.
c. Do’s and Don’ts, Safety Guidelines in Computer Lab
2. Familiarization of Basic Software – Operating System, Word Processors, Internet Browsers,
Integrated Development Environment (IDE) with Examples.
3. Type Program Code, Debug and Compile basic programs covering C Programming
fundamentals discussed during theory classes.
Note: Student has to execute a minimum of 8 programs in each part to complete the Lab course
Evaluation Scheme for Lab Examination
Content Hours
Unit - 1
Introduction to data structures: Definition; Types of data structures - Primitive & Non- 8
primitive, Linear and Non-linear; Operations on data structures.
Algorithm Specification, Performance Analysis, Performance Measurement Recursion:
Definition; Types of recursions; Examples - Fibonacci numbers, GCD, Binomial coefficient nCr,
Towers of Hanoi; Comparison between iterative and recursive functions.
Unit - 2
Arrays: Basic Concepts – Definition, Declaration, Initialization, Operations on arrays; Types of 12
arrays; Arrays as abstract data types (ADT); Representation of Linear Arrays in memory;
Traversing linear arrays; Inserting and deleting elements; Sorting – Selection sort, Bubble sort,
Quick sort, Insertion sort, merge sort; Searching - Sequential Search, Binary search; Iterative and
Recursive searching; Multidimensional arrays; Representation of multidimensional arrays; Sparse
matrices.
Unit - 3
Stacks: Basic Concepts – Definition and Representation of stacks; Operations on stacks; 10
Applications of stacks; Infix, postfix and prefix notations; Conversion from infix to postfix using
stack; Evaluation of postfix expression using stack; Application of stack in function calls.
Queues: Basic Concepts – Definition and Representation of queues; Types of queues – Simple
queues, Circular queues, Double ended queues, Priority queues; Operations on Simple queues;
Unit - 4
Dynamic memory allocation: Static & Dynamic memory allocation; Memory allocation and de- 12
allocation functions - malloc, calloc, realloc and free.
Linked list: Basic Concepts – Definition and Representation of linked list, Types of linked lists -
Singly linked list, Doubly liked list, Header liked list, Circular linked list; Representation of Linked
list in Memory;
Operations on Singly linked lists – Traversing, Searching, Insertion, Deletion; Memory allocation;
Garbage collection
Unit - 5
Trees: Definition; Tree terminologies –node, root node, parent node, ancestors of a node, siblings, 10
terminal & non-terminal nodes, degree of a node, level, edge, path, depth;
Binary tree: Type of binary trees - strict binary tree, complete binary tree, binary search tree and heap
tree; Array representation of binary tree. Traversal of binary tree; preorder, inorder and postorder
traversal; Reconstruction of a binary tree when any two of the traversals are given.
Text Books
1. Sartaj Sahani: Fundamentals of Data Structures
References
1. Tanenbaum: Data structures using C (Pearson Education)
2. Kamathane: Introduction to Data structures (Pearson Education)
3. Y. Kanitkar: Data Structures Using C (BPB)
4. Sudipa Mukherjee: Data Structures using C – 1000 Problems and Solutions (McGraw
Hill Education, 2007))
Course Code: DSC-2Lab Course Title: Data Structures Lab
Course Credits: 02 Hour of Teaching/Week: 04
Total Contact Hours: 52 Formative Assessment Marks: 10
Exam Marks: 40 Exam Duration: 04
Programming Lab
Part A:
1. Write a C Program to find GCD using recursive function
2. Write a C Program to display Pascal Triangle using binomial function
3. Write a C Program to generate n Fibonacci numbers using recursive function.
4. Write a C Program to implement Towers of Hanoi.
5. Write a C Program to implement dynamic array, find smallest and largest element of the
array.
6. Write a C Program to read the names of cities and arrange them alphabetically using bubble sort.
7. Write a C Program to sort the given list using selection sort technique.
8. Write a C Program to sort the given list using insertion sort technique.
Part B:
1. Write a C Program to sort the given list using quick sort technique.
2. Write a C Program to sort the given list using merge sort technique.
3. Write a C Program to search an element using linear search technique and recursive binary search
technique.
4. Write a C Program to implement Stack.
5. Write a C Program to convert an infix expression to postfix.
6. Write a C Program to implement simple queue.
7. Write a C Program to implement linear linked list.
8. Write a C Program to implement traversal of a binary tree.
Course Content
Content Hours
Unit - 1
Unit-4
Unit-5
Text Books:
1. Pradeep K. Sinha and Priti Sinha: Computer Fundamentals (Sixth Edition),
BPBPublication
2. David Riley and Kenny Hunt, Computational thinking for modern solver,
Chapman & Hall/CRC,
Reference:
1. J. Glenn Brook shear,” Computer Science: An Overview”, Addision-Wesley,
Twelfth Edition,
2. R.G. Dromey, “How to solve it by Computer”, PHI,
Course Code: CSOE02 Course Title: Problem Solving and C Programming
Concepts
Course Credits: 03 Hours/Week: 03
Total Contact Hours: 42 Formative Assessment Marks: 40
Exam Marks: 60 Exam Duration: 03 Hours
Course Content
Content Hours
Unit – 1
Problem Solving Techniques: Problem solving techniques – problem definition, 10
analysis, design, debugging, testing, documentation and maintenance. Design Tools -
ALGORITHM: definition, characteristics, advantages and disadvantages.
FLOWCHART - definition, symbols, advantages and disadvantages. Writing an
algorithm and flowchart: Area of circle, arithmetical operations, simple interest and
compound interest, quadratic equation, largest of three numbers, sum of N natural
numbers, factorial of number, Fibonacci series, prime number, reverse a given
number, evaluation of series like sin(x), cos(x), ex, log(x) etc.
Unit-2
Introduction to C Programming: Overview of C; History and Features of C; Structure 10
of a C Program with Examples; Creating and Executing a C Program; Compilation
process in C.
C Programming Basic Concepts: C Character Set; C tokens - keywords, identifiers,
constants, and variables; Data types; Declaration & initialization of variables;
Symbolic constants, Formatted I/O functions - printf and scanf,
Unit-3
C Operators & Expressions: Arithmetic operators; Relational operators; Logical 08
operators; Assignment operators; Increment & Decrement operators; Bitwise
operators; Conditional operator; Special operators; Operator Precedence and
Associatively; Evaluation of arithmetic expressions; Type conversion.
Unit-4
Decision making, branching and looping: Decision making - if and if-else statement, 08
nested if, else if ladder, switch statements, conditional operator, goto statement.
Looping - while, do-while and for, nested for. break and continue statements.
Programs on these concepts.
Unit-5
06
Arrays: One Dimensional arrays - Declaration, Initialization and Memory
representation; Two Dimensional arrays - Declaration, Initialization and Memory
representation.
References :
1. Computer Concepts and Programming, Padma Reddy
2. Let us C , Yashwanth Kanetkar
3. Ansi C, Balagurusamy
4. Problem solving with C, M. T. Somashekara and D. S. Guru
Course Code: CAOE03 Course Title: Office Automation
Course Credits: 03 Hours/Week: 03
Total Contact Hours: 42 Formative Assessment Marks: 40
Exam Marks: 60 Exam Duration: 03 Hours
Course Content
Content Hour
s
Unit – 1
Windows Desk top - GUI: Definition, Standards, Cursors/Pointers, Icons, GUI 06
Menus, GUI-Share Data – Desktop icons and their functions: My computer, My
documents, Network neighbourhood, Recycle Bin, Quick launch tool bar, System
tray, Start menu, Task bar – Dialog Boxes: List Box, Spin Control Box, Slide, Drop-
down list, Radio button, Check box, Text box, Task Bar - System Tray - Quick launch
tool bar - Start button - Parts of Windows -Title bar-Menu bar - Scroll bar- Status
bar, Maximize, Minimize, close and Resize & Moving a Window – Windows - Start
Menu –Help Menu- Preview Menu; Logoff & Shutdown – Keyboard Accelerators:
Key board short keys or hotkeys
Unit-2
MS Word - Working with Documents -Opening & Saving files, Editing text 10
documents, Inserting, Deleting, Cut, Copy, Paste, Undo, Redo, Find, Search, Replace,
Formatting page & setting Margins, Converting files to different formats, Importing
& Exporting documents, Sending files to others, Using Tool bars, Ruler, Using Icons,
using help, Formatting Documents - Setting Font styles, Font selection- style, size,
colour etc, Type face - Bold, Italic, Underline, Case settings, Highlighting, Special
symbols, Setting Paragraph style, Alignments, Indents, Line Space, Margins, Bullets
& Numbering. Setting Page style - Formatting Page, Page tab, Margins, Layout
settings, Paper tray, Border & Shading, Columns, Header & footer, Setting
Footnotes & end notes – Shortcut Keys; Inserting manual page break, Column break
and line break, creating sections & frames, Anchoring & Wrapping, Setting
Document styles, Table of Contents, Index, Page Numbering, date & Time, Author
etc., Creating Master Documents, Web page. Creating Tables- Table settings,
Borders, Alignments, Insertion, deletion, Merging, Splitting, Sorting, and Formula,
Drawing - Inserting ClipArt, Pictures/Files etc., Tools – Word Completion, Spell
Checks, Mail merge, Templates, Printing Documents – Shortcut keys.
Unit-3
MS Excel: Spread Sheet & its Applications, Opening Spreadsheet, Menus - main 10
menu, Formula Editing, Formatting, Toolbars, Using Icons, Using help, Shortcuts,
Spreadsheet types. Working with Spreadsheets- opening, saving files, setting
Margins, Converting files to different formats (importing, exporting, sending files
to others), Spread sheet addressing - Rows, Columns & Cells, Referring Cells &
Selecting Cells – Shortcut Keys. Entering & Deleting Data- Entering data, Cut, Copy,
Paste, Undo, Redo, Filling Continuous rows, columns, Highlighting values, Find,
Search & replace, Inserting Data, Insert Cells, Column, rows & sheets, Symbols, Data
from external files, Frames, Clipart, Pictures, Files etc, Inserting Functions, Manual
breaks, Setting Formula - finding total in a column or row, Mathematical operations
(Addition, Subtraction, Multiplication, Division, Exponentiation), Using other
Formulae. Formatting Spreadsheets, Formatting layout for Graphics, Clipart etc.,
Worksheet Row & Column Headers, Sheet Name, Row height & Column width,
Visibility - Row, Column, Sheet, Security, Sheet Formatting & style, Sheet
background, Colour etc, Borders & Shading – Shortcut keys. Working with sheets –
Sorting, Filtering, Validation, Consolidation, and Subtotal. Creating Charts -
Drawing. Printing. Using Tools
Unit-4
Unit-5
Internet and Web Browsers: Definition of WebAddressing-URL-Different types of 06
Internet Connections; Dial up connection, Broad band ( ISDN, DSL, Cable), Wireless
( Wi-Fi, WiMax, Satellite, Mobile) naming convention, browsers and its types,
internet browsing, searching - Search Engines - Portals - Social Networking sites-
Blogs - viewing a webpage, downloading and uploading the website; Creating an
email-ID, e-mail reading, saving, printing, forwarding and deleting the mails,
checking the mails, viewing and running file attachments, addressing with cc and
bcc.
References:
1. Fundamentals of computers - V.Rajaraman - Prentice- Hall of india
2. Microsoft Office 2007 Bible - John Walkenbach,Herb Tyson,Faithe Wempen,cary
N.Prague,Michael R.groh,Peter G.Aitken, and Lisa a.Bucki -Wiley India pvt.ltd.
3. Computer Fundamentals - P. K. Sinha Publisher: BPB Publications.
4. Computer & Internet Basics Step-by-Step - Etc-end the Clutter - Infinity Publishing.
5. https://en.wikipedia.org
6. http://windows.microsoft.com/en-in/windows/windows-basics-all-topics