Institute of Aeronautical Engineering: Computer Science and Engineering
Institute of Aeronautical Engineering: Computer Science and Engineering
(Autonomous)
Dundigal, Hyderabad -500 043
COURSE DESCRIPTOR
Programme B.Tech
I AE | ME
Semester
II CSE | IT | ECE |EEE
Theory Practical
3 0 3 4 2
I. COURSE OVERVIEW:
The course covers the basics of programming and demonstrates fundamental programming techniques,
customs and terms including the most common library functions and the usage of the preprocessor. This
course helps the students in gaining the knowledge to write simple C language applications, mathematical
and engineering problems. This course helps to undertake future courses that assume this programming
language as a background in computer programming. Topics include variables, data types, functions,
control structures, pointers, strings, arrays and dynamic allocation principles. This course in reached to
student by power point presentations, lecture notes, and lab involve the problem solving in mathematical
and engineering areas.
II. COURSE PRE-REQUISITES:
Course
Level Semester Prerequisites Credits
Code
- - - Basic Programming Concepts -
III. MARKS DISTRIBUTION
Page | 1
IV. DELIVERY / INSTRUCTIONAL METHODOLOGIES:
V. EVALUATION METHODOLOGY:
The course will be evaluated for a total of 100 marks, with 30 marks for Continuous Internal Assessment
(CIA) and 70 marks for Semester End Examination (SEE). Out of 30 marks allotted for CIA during the
semester, marks are awarded by taking average of two CIA examinations or the marks scored in the make-up
examination.
Semester End Examination (SEE): The SEE is conducted for 70 marks of 3 hours duration. The syllabus
for the theory courses is divided into five modules and each modules carries equal weightage in terms of
marks distribution. The question paper pattern is as follows. Two full questions with “either‟ or ‟choice”
will be drawn from each module. Each question carries 14 marks. There could be a maximum of two sub
divisions in a question.
Component Theory
Total Marks
Type of Assessment CIE Exam Quiz AAT
CIA Marks 20 05 05 30
Page | 2
VI. HOW PROGRAM OUTCOMES ARE ASSESSED:
Proficiency assessed
Program Outcomes (POs) Strength
By
PO 1 Engineering knowledge: Apply the knowledge of mathematics, 3 Assignments/Quiz
science, engineering fundamentals, and an engineering
specialization to the solution of complex engineering problems.
PO 2 Problem analysis: Identify, formulate, review research 2 Assignments/Quiz
literature, and analyze complex engineering problems
reaching substantiated conclusions using first principles of
mathematics, natural sciences, and engineering sciences
PO 3 Design / development of solutions: Design solutions for 3 Assignments
complex engineering problems and design system components or
processes that meet the specified needs with appropriate
consideration for the public health and safety, and the cultural,
societal, and environmental considerations.
PO 5 Modern tool usage: Create, select, and apply appropriate 3 Assignments
techniques, resources, and modern engineering and IT tools
including prediction and modeling to complex engineering
activities with an understanding of the limitations.
PO 12 Life-long learning: Recognize the need for, and have the 2 Assignments
preparation and ability to engage in independent and life-
long learning in the broadest context of technological change.
III Improve problem solving skills using arrays, strings, and functions
Page | 3
IX. COURSE OUTCOMES (COs):
Cos Course Outcome CLOs Course Learning Outcome
CO 1 Describe the concept of CLO 1 Identify and understand the working of key
computer system, analyze a components of a computer system.
given problem, develop an CLO 2 Analyze a given problem and develop an algorithm to solve the
algorithm, fundamental problem.
programming constructs, CLO 3 Describe the fundamental programming constructs and
identify data representation articulate how they are used to develop a program with a desired
formats, describe operators runtime execution flow.
and their precedence, CLO 4 Gain knowledge to identify appropriate C language constructs to
associativity. write basic programs.
CLO 5 Identify the right data representation formats based on the
requirements of the problem.
CLO 6 Describe the operators, their precedence and associativity while
evaluating expressions in program statements.
CO 2 Understand branching and CLO 7 Understand branching statements, loop statements and use them
loop statements. in problem solving.
CO 3 Describe the concept of CLO 8 Learn homogenous derived data types and use them to solve
homogeneous derives data statistical problems.
types, strings and functions. CLO 9 Identify the right string function to write string programs.
CLO 10 Understand procedural oriented programming using functions.
CLO 11 Understand how recursion works and write programs using
recursion to solve problems.
CLO 12 Differentiate call by value and call by reference parameter
passing mechanisms.
CLO 13 Understand storage classes and preprocessor directives for
programming.
CO 4 Understand pointers and CLO 14 Understand pointers conceptually and apply them in C
heterogeneous data types. programs.
CLO 15 Distinguish homogenous and heterogeneous data types and
apply them in solving data processing applications.
CO 5 Describe the concept of file CLO 16 Explain the concept of file system for handling data storage and
system. apply it for solving problems.
CLO 17 Differentiate text files and binary files and write the simple C
programs using file handling functions.
CLO 18 Apply the concepts to solve real-time applications using the
features of C language.
CLO 19 Gain knowledge to identify appropriate searching and sorting
techniques by calculating time complexity for problem solving.
CLO 20 Possess the knowledge and skills for employability and to
succeed in national and international level competitive
examinations.
Page | 4
CLO CLO’s At the end of the course, the student will have PO’s Strength of
Code the ability to: Mapped Mapping
CO 5 3 3 3 3 3 2 3 3
3 = High; 2 = Medium; 1 = Low
Page | 5
XII. MAPPING COURSE LEARNING OUTCOMES LEADING TO THE ACHIEVEMENT OF
PROGRAM OUTCOMES AND PROGRAM SPECIFIC OUTCOMES:
Course Program Specific
Program Outcomes (POs)
Learning Outcomes
(PSOs)
Outcomes
(CLOs) PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CLO 1 2 2 2 2 2
CLO 2 2 2 2 2
CLO 3 2 2 3 2
CLO 4 3 3 1 3
CLO 5 2 2 3
CLO 6 3 3 3 3
CLO 7 2 3
CLO 8 2 2 2 2 3
CLO 9 2 2 2 2 3
CLO 10 2 2 2 2 1 3 1
CLO 11 2 3 2 3 1
CLO 12 2 2 3 2
CLO 13 3 3 3 3
CLO 14 3 3 3 2 3
CLO 15 2 2 3
CLO 16 3 3 3 1 1
CLO 17 2 2 2 3
CLO 18 2 2 3
CLO 19 3 3 3 3
CLO 20 2 2 3
3 = High; 2 = Medium; 1 = Low
Page | 6
XV. SYLLABUS
Functions: Need for user defined functions, function declaration, function prototype, category of
functions, inter function communication, function calls, parameter passing mechanisms, recursion,
passing arrays to functions, passing strings to functions, storage classes, preprocessor directive.
Web References:
Page | 7
1. https://www.bfoit.org/itp/Programming.html
2. https://www.khanacademy.org/computing/computer-programming
3. https://www.edx.org/course/programming-basics-iitbombayx-cs101-1x-0
4. https://www.edx.org/course/introduction-computer-science-harvardx-cs50x
E-Text Books:
1. http://www.freebookcentre.net/Language/Free-C-Programming-Books-Download.htm
2. http://www.imada.sdu.dk/~svalle/courses/dm14-2005/mirror/c/
3. http://www.enggnotebook.weebly.com/uploads/2/2/7/1/22718186/ge6151-notes.pdf
MOOC Course:
1. https://www.alison.com/courses/Introduction-to-Programming-in-c
2. http://www.ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-s096-effective-
programming-in-c- and-c-january-iap-2014/index.htm
1. Develop simple character-based Chess-game supporting standard partial chess moves. Chess board
should be 8x8 Cell Board having each Cell of 4 characters. Basic chess board with empty shell should
have A…Cell and B... For Black Cell. Wherever any player‟s Game elements such as Rook or Camel or
King or Queen is on board Cell then it. Then it should be displayed such as BQN2 or WQN1 which
indicated such as Queen of player-2 on black cell or queen of player-1 on white cell. Or Student can use
his own conventions. Student should be able to demonstrate 5 moves for each player minimum.
2. (Airline Reservations System) A small airline has just purchased a computer for its new automated
reservations system. The president has asked you to program the new system. You are to write a program to
assign seats on each flight of the airline's only plane (capacity: 10 seats).
3. Your program should display the following menu of alternatives: Please type 1 for "first class"
Please type 2 for "economy"
If the person types 1, then your program should assign a seat in the first class section (seats 1- 5). If
the person types 2, then your program should assign a seat in the economy section (seats 6-10). Your
program should then print a boarding pass indicating the person's seat number and whether it is in
the first class or economy section of the plane.
Use a single-subscripted array to represent the seating chart of the plane. Initialize all the elements
of the array to 0 to indicate that all seats are empty. As each seat is assigned, set the corresponding
elements of the array to 1 to indicate that the seat is no longer
available.
Your program should, of course, never assign a seat that has already been assigned. When the first
class section is full, your program should ask the person if it is acceptable to be placed in the
economy section (and vice versa). If yes, then make the appropriate seat assignment. If no, then print
the message "Next flight leaves in 3 hours.
Page | 9
(Maze Traversal) The following grid is a double-subscripted array representation of a maze.
The # symbols represent the walls of the maze, and the periods (.) represent squares in the possible
paths through the maze. There is a simple algorithm for walking through a maze that guarantees finding
the exit (assuming there is an exit). If there is not an exit, you will arrive at the starting location again.
Place your right hand on the wall to your right and begin walking forward. Never remove your hand from
the wall. If the maze turns to the right, you follow the wall to the right. As long as you do not remove
your hand from the wall, eventually you will arrive at the exit of the maze. There may be a shorter path
than the one you have taken, but you are guaranteed to get out of the maze. Write recursive function
maze Traverse to walk through the maze. The function should receive as arguments a 12-by-12
character array representing the maze and the starting location of the maze. As maze Traverse attempts
to locate the exit from the maze, it should place the character X in each square in the path. The function
should display the maze after each move so the user can watch as the maze is solved.
Page | 10