MAULANA AZAD NATIONAL INSTITUTE OF TECHNOLOGY,
BHOPAL - 462003
Name of B. Tech. Semester: First/Second Year: First
Program
Name of Course Computer programming
Course Code CS 115
Core / Elective / Other Core
Prerequisite:
1. There are no prerequisites to learn C programming.
2. Just a bit of logical skills should be enough.
Course Outcomes:
1. Identify situations where computational methods and computers would be
useful
2. Given a computational problem, identify and abstract the programming task
involved.
3. Design algorithm and illustrate flowchart for a given problem.
4. Write the program on a computer, edit, compile, debug, correct, recompile and
run it.
5. Identify tasks in which the numerical techniques learned are applicable and
apply them to write programs, and hence use computers effectively to solve the
task.
6. Learn the basics of the Internet of Things and its applications. Understand
Arduino Architecture, programming and interfacing with sensors.
Description of Contents in brief:
1. Introduction to Computer and its organization.
2. Problem solving using Computers by Flowchart and Algorithms.
3. Developing a running computer program in C.
4. C programming using conditions, loop, array, functions, pointers and
structures.
5. Introduction to IoT using Arduino.
List of Textbooks:
1. E. Balaguruswamy, “Programming in ANSI C”, Tata McGraw-Hill.
2. Suresh Kumar Srivastava, “C in Depth”, BPB Publication.
MAULANA AZAD NATIONAL INSTITUTE OF TECHNOLOGY,
BHOPAL - 462003
3. R. G. Dromey, "How to Solve It By Computer", Pearson
4. K R Venugopal, “Mastering C”, Tata McGraw-Hill.
List of Reference Books:
1. Yashavant P. Kanetkar, “Let us C”, BPB Publication
2. A.R. Bradley, "Programming for Engineers", Springer
3. Schildt Herbert, “C- The Complete Reference” ,Tata McGraw-Hill.
4. Dan Gookin,”Begin programming with C for Dummies”, Wiley
URLs:
1. https://nptel.ac.in/courses/106/105/106105171/
2. https://www.nptel.ac.in/courses/106/104/106104128/
Lecture Plan (about 40-50 Lectures):
Lecture Topic
No.
1. Fundamentals of Computing
2. Evolution of Computer Hardware and Moore’s Law
3. Organization of Computing Systems -
Input/Output devices, Memory,Instructions, Program
4. Software, Operating System, Program execution
5. Problem solving using Computers- Flow charting technique,
6. Writing algorithms
7. Generation of programming languages
8. Assembler, Compiler, Interpreter, Debugger, Editor
9. Phases of developing a running computer program in C
10. Constants, Variables, Expressions,Operators,Operator precedence in
C
11. Data types, size and values, Char, Unsigned and Signed data types,
Overflow
12. Number systems and representations.
13. Statements: Declarations, Input-Output Statements, Compound
statements
14. Selection Statements, Conditions -I
MAULANA AZAD NATIONAL INSTITUTE OF TECHNOLOGY,
BHOPAL - 462003
15. Selection Statements, Conditions -II
16. Repetitive statements - While loop -I
17. While loop-II
18. Do-while loop -I
19. Do-while loop -II
20. For loop -I
21. For loop -II
22. Arrays
23. Sorting problem: Bubble Sort
24. Search problem: Linear search
25. Multidimensional Arrays and Matrices -I
26. Multidimensional Arrays and Matrices -II
27. Functions: The prototype declaration, Function definition
28. Function call: Passing arguments to a function by value
29. Pointers: Pointer variables, Declaring and dereferencing pointer
variables
30. Function call: Passing arguments to a function by reference
31. Accessing arrays through pointers
32. Scope of variable
33. Recursive function call -I
34. Recursive function call -II
35. Pointer arithmetic
36. Pointer Types
37. Strings: String operations in C
38. Structures and Union in C
39. Typedef Structures.
MAULANA AZAD NATIONAL INSTITUTE OF TECHNOLOGY,
BHOPAL - 462003
40. File input-output in C. Opening, closing and reading from files
41. Introduction to Internet of Things and Arduino
42. Sensors
43. Interfacing with LED with an Arduino board and ON/OFF the LED.
44. Interfacing with different sensors with an Arduino board and
displaying their reading -I
45. Interfacing with different sensors with an Arduino board and
displaying their reading -II