Course Objectives:
To learn the fundamentals of computers.
To understand the various steps in program development.
To learn the syntax and semantics of C programming language.
To learn the usage of structured programming approach in solving problems. Course Outcomes: The student will learn
To write algorithms and to draw flowcharts for solving problems.
To convert the algorithms/flowcharts to C programs.
To code and test a given logic in C programming language.
To decompose a problem into functions and to develop modular reusable code.
To use arrays, pointers, strings and structures to write C programs.
Searching and sorting problems. UNIT – I: Introduction to Programming
Introduction to components of a computer system: disks, primary and secondary memory, processor,operating system, compilers, creating, compiling and executing a program etc., Number systemsIntroduction to Algorithms: steps to solve logical and numerical problems. Representation of Algorithm, Flowchart/Pseudo code with examples, Program design and structured programming Introduction to C Programming Language: variables (with data types and space requirements), Syntax and Logical Errors in compilation, object and executable code ,Operators,expressions and precedence, Expression evaluation, Storage classes (auto, extern, static and register), type conversion,The main method and command line arguments Bitwise operations: Bitwise AND, OR, XOR and NOT operators Conditional Branching and Loops: Writing and evaluation of conditionals and consequent branching
with if, if-else, switch-case, ternary operator, goto, Iteration with for, while, do-while loops I/O: Simple input and output with scanf and printf, formatted I/O, Introduction to stdin, stdout and stderr.Command line arguments UNIT – II: Arrays, Strings, Structures and Pointers:
Arrays: one and two dimensional arrays, creating, accessing and manipulating elements of arrays Strings: Introduction to strings, handling strings as array of characters, basic string functions available in C (strlen, strcat, strcpy, strstr etc.), arrays of strings Structures: Defining structures, initializing structures, unions, Array of structures Pointers: Idea of pointers, Defining pointers, Pointers to Arrays and Structures, Use of Pointers in selfreferential structures, usage of self referential structures in linked list (no implementation) Enumeration data type UNIT – III: Pre-processor and File handling in C:
Preprocessor: Commonly used Preprocessor commands like include, define, undef, if, ifdef, ifndef Files: Text and Binary files, Creating and Reading and writing text and binary files, Appending data to existing files, Writing and reading structures using binary files, Random access using fseek, ftell and rewind functions. UNIT – IV: Function and Dynamic Memory Allocation:
Functions: Designing structured programs, Declaring a function, Signature of a function, Parameters
and return type of a function, passing parameters to functions, call by value, Passing arrays to functions, passing pointers to functions, idea of call by reference, Some C standard functions and libraries Recursion: Simple programs, such as Finding Factorial, Fibonacci series etc., Limitations of Recursive functions Dynamic memory allocation: Allocating and freeing memory, Allocating memory for arrays of different data types UNIT – V: Introduction to Algorithms:
Algorithms for finding roots of a quadratic equations, finding minimum and maximum numbers of a given
set, finding if a number is prime number, etc.Basic searching in an array of elements (linear and binary search techniques),Basic algorithms to sort array of elements (Bubble, Insertion and Selection sort algorithms),
Basic concept of order of complexity through the example programs TEXT BOOKS:
1. Byron Gottfried, Schaum’s Outline of Programming with C, McGraw-Hill
2. B.A. Forouzan and R.F. Gilberg C Programming and Data Structures, Cengage Learning, (3rd Edition) REFERENCE BOOKS:
1. Brian W. Kernighan and Dennis M. Ritchie, The C Programming Language, Prentice
2. Hall of India
3. R.G. Dromey, How to solve it by Computer, Pearson (16th Impression)
4. Programming in C, Stephen G. Kochan, Fourth Edition, Pearson Education.
5. Herbert Schildt, C: The Complete Reference, Mc Graw Hill, 4th Edition
CSE-AIML
SEMESTER
SUBJECT CODE
SUBJECT
Lession Plan Lecturer Notes & Question Bank
SYLLABUS
I
MA101BS
Mathematics – I
Click Here
I
AP102BS
Applied Physics
Click Here
I
CS103ES
Programming for Problem Solving
Click Here
I
ME104ES
Engineering Graphics
Click Here
I
AP105BS
Applied Physics Lab
Click Here
I
CS106ES
Programming for Problem Solving Lab
Click Here
I
MC109ES
Environmental Science
Click Here
II
MA201BS
Mathematics – II
Click Here
II
CH202BS
Chemistry
Click Here
II
EE203ES
Basic Electrical Engineering
Click Here
II
ME205ES
Engineering Workshop
Click Here
II
EN205HS
English
Click Here
II
CH206BS
Engineering Chemistry Lab
Click Here
II
EN207HS
English Language and Communication Skills Lab
Click Here
II
EE208ES
Basic Electrical Engineering Lab
Click Here
II-I
CS310PC
Discrete Mathematics
Click Here
II-I
CS302PC
Data Structures
Click Here
II-I
MA313BS
Mathematical and Statistical Foundations
Click Here
II-I
CS304PC
Computer Organization and Architecture
II-I
CS311PC
Python Programming
Click Here
II-I
SM306MS
Business Economics & Financial Analysis
Click Here
II-I
CS307PC
Data Structures Lab
Click Here
II-I
CS312PC
Python Programming Lab
Click Here
II-I
MC309
Gender Sensitization Lab
Click Here
II-II
CS416PC
Formal Language and Automata Theory
Click Here
II-II
CS417PC
Software Engineering
Click Here
II-II
CS403PC
Operating Systems
Click Here
II-II
CS404PC
Database Management Systems
Click Here
II-II
CS412PC
Object Oriented Programming using Java
Click Here
II-II
CS406PC
Operating Systems Lab
Click Here
II-II
CS407PC
Database Management Systems Lab
Click Here
II-II
CS408PC
Java Programming Lab
Click Here
II-II
MC409
Constitution of India
Click Here
III-I
Design and Analysis of Algorithms
Click Here
III-I
Machine Learning
Click Here
III-I
Computer Networks
Click Here
III-I
Compiler Design
Click Here
III-I
Graph Theory (PE1)
Click Here
III-I
Introduction to Data Science(PE1)
Click Here
III-I
Web Programming(PE1)
Click Here
III-I
Image Processing(PE1)
Click Here
III-I
Computer Graphics(PE1)
Click Here
III-I
Software Testing Methodologies(PE2)
Click Here
III-I
Information Retrieval Systems(PE2)
III-I
Pattern Recognition(PE2)
Click Here
III-I
Computer Vision and Robotics(PE2)
Click Here
Click Here
III-I
Data Warehousing and Business Intelligence(PE2)
Click Here
III-I
Machine Learning Lab
Click Here
III-I
Computer Networks Lab
Click Here
III-I
Advanced Communication Skills Lab
Click Here
III-I
Intellectual Property Rights
Click Here
III-II
Artificial Intelligence
Click Here
Click Here
III-II
DevOps
Click Here
Click Here
III-II
Natural Language Processing
Click Here
Click Here
III-II
Internet of Things(PE3)
Click Here
Click Here
III-II
Data Mining(PE3)
Click Here
Click Here
III-II
Scripting Languages(PE3)
Click Here
Click Here
III-II
Mobile Application Development(PE3)
Click Here
Click Here
III-II
Cryptography and Network Security(PE3)
Click Here
Click Here
III-II
Artificial Intelligence and Natural Language
Processing Lab
Add Comment