Problem Solving and Computer Programming Using C Lab
Problem Solving and Computer Programming Using C Lab
COURSE PLAN
Department Computer Science
Course Title PROBLEM SOLVING AND COMPUTER
PROGRAMMING USING C LAB
Course Code XXXX
Programme and Section BCA
Academic Year 2024-25
Semester I
LTP/ hours per week- Credit L: 00, T: 00 and P: 03, 1 Credit
Course Instructor Details CHITHRA V S
vschithra@my.amrita.edu
9483900642
NIKHIL S
nikhils@my.amrita.edu
8317329373
Course Objective(s)
· Understand the principles and methods of computational problem solving thereby providing transferable skills to any other domain.
· Familiarize yourself with the hands-on experience on developing applications using different constructs in C language.
Program Outcomes
Amrita School of Computing, Mysuru Campus
Computational Knowledge: Apply knowledge of computing fundamentals, computing
specialisation, mathematics, and domain knowledge appropriate for the computing
PO1
specialisation to the abstraction and conceptualisation of computing models from defined
problems and requirements.
Problem Analysis: Identify, formulate, research literature, and solve complex computing
PO2 problems reaching substantiated conclusions using fundamental principles of mathematics,
computing sciences, and relevant domain disciplines.
Design /Development of Solutions: Design and evaluate solutions for complex computing
problems, and design and evaluate systems, components, or processes that meet specified
PO3
needs with appropriate consideration for public health and safety, cultural, societal, and
environmental considerations.
Conduct Investigations of Complex Computing Problems: Use research-based knowledge
PO4 and research methods, including the design of experiments, analysis, and interpretation of
data, and synthesis of the information to provide valid conclusions.
Modern Tool Usage: Create, select, adapt and apply appropriate techniques, resources, and
PO5 modern computing tools to complex computing activities, with an understanding of the
limitations.
Professional Ethics: Understand and commit to professional ethics and cyber regulations,
PO6
responsibilities, and norms of professional computing practice.
Life-long Learning: Recognise the need, and have the ability, to engage in independent
PO7
learning for continual development as a computing professional.
Project management and finance: Demonstrate knowledge and understanding of the
PO8 computing and management principles and apply these to one’s own work, as a member
and leader in a team, to 16 manage projects and in multidisciplinary environments.
Communication Efficacy: Communicate effectively with the computing community, and
with society at large, about complex computing activities by being able to comprehend and
PO9
write effective reports, design documentation, make effective presentations, and give and
understand clear instructions.
Amrita School of Computing, Mysuru Campus
Societal and Environmental Concern: Understand and assess societal, environmental,
PO10 health, safety, legal, and cultural issues within local and global contexts, and the
consequential responsibilities relevant to professional computing practice.
Individual and Team Work: Function effectively as an individual and as a member or
PO11
leader in diverse teams and in multidisciplinary environments.
Innovation and Entrepreneurship: Identify a timely opportunity and use innovation to
PO12 pursue that opportunity to create value and wealth for the betterment of the individual and
society at large.
Course Outcomes
Design, implement, test, debug, and document moderately complex programs in C.
CO1
Implement various C programs using functions, pointers and strings.
CO2
CO3 Apply recursion, searching, and sorting algorithms to solve different dynamic problems.
CO4 Use files and file operations to build data handling applications in C.
Lab 2 Flowgorithm-array and string 8.Write a flowgorithm find Largest from three numbers.
9.Write a flowgorithm to find sum of square of given numbers
10.Write a flowgorithm to develop Simple calculator
11.Write a flowgorithm to calculate Sum of elements in an array
CO1
12.Write a flowgorithm to search an element using linear search
13.Write a flowgorithm to sort the given array using Bubble sort
14. Write a flowgorithm to Merging of two arrays.
15,Write a flowgorithm find Length of the string using function
Lab3 Basic c programs and their 16. Write a C program to find sum and average of three numbers.
execution. 17. Write a C program to find the sum of a list of numbers.
Operators-Control statements 18. Write a C program to generate the first n terms of the Fibonacci sequence. CO1
19. Write a C program to generate prime numbers between 1 to n.
20. Write a C program to check whether given number is perfect number or not.
Lab 4 Control Statements- 21. Write a C program to find the roots of a quadratic equation.
if, if-else, nested if, if-else if, 22. Write a C program perform arithmetic operations using switch statement.
switch, goto CO2
23. Write a C program to find factorial of a given integer using non-recursive function.
Looping control-while, for do- CO1
24. Write a C program to find factorial of a given integer using recursive function.
while ,Functions 25. Write C program to find GCD of two integers by using recursive function.
Lab 5 Control Statements and Functions 26. Write C program to find GCD of two integers using non-recursive function.
27. Write a C program to find both the largest and smallest number in a list of integers.
Lab Test 1
Amrita School of Computing, Mysuru Campus
Lab 6 Arrays and strings-1D and 2D 28. Write a C Program to Sort the Array in an Ascending Order.
array-creating, displaying, CO2
29. Write a C Program to find whether given matrix is symmetric or not.
searching, sorting, reversing CO1
30. Write a C program to perform addition of two matrices.
Lab 7 Arrays and strings-1D and 2D 31. Write a C program that uses functions to perform Multiplication of Two Matrices.
array-creating, displaying, 32. Write a C program to use function to insert a sub-string in to given main string from a given
searching, sorting, reversing, CO2
position.
String-string functions, CO1
33. Write a C program that uses functions to delete n Characters from a given position in a
manipulation of string, multi- given string.
string
String-string functions, 34. Write a C program using user defined functions to determine whether the given string is
Lab 8 manipulation of string, multi- palindrome or not. CO2
string, 35. Write a C program to find the length of the string using Pointer. CO1
Pointers-pointer arithmetic, an
array of pointers, a pointer to an
array
Lab 9 Pointers-pointer arithmetic, an 36. Write a C program to Display array elements using calloc( ) function.
array of pointers, a pointer to an 37. Write a C program that uses functions and structures to perform the following operations:
array, CO3
i) Reading a complex number, ii) Writing a complex number, iii) Addition of two complex
Structure CO1
numbers, iv) Multiplication of two complex numbers.
38. Write a C program for a dynamic problem.
Lab Test 2
Lab 11 File Handling 42. Write a C program to display the contents of a file. CO4
43. Write a C program to copy the contents of one file to another. CO1
Lab 12 File Handling 44. Write a C program to merge two files into a third file. CO4
45. Write a C program to reverse the first n characters in a file. CO1
Amrita School of Computing, Mysuru Campus
CO-PO Mapping:
PO/PSO
PO11 PO12
CO PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10
3 3 3 3 3 - 2 1 - - - -
CO1
3 3 3 3 3 - 2 1 - - - -
CO2
3 3 3 3 3 - 2 1 - - - 1
CO3
3 2 3 3 2 - 2 1 - - - -
CO4
Evaluation Pattern
Assessment Weightage (%)
Continuous Assessment 70
End Semester Exam 30
Total Marks 100
References
1.Ferragina P, Luccio F. Computational Thinking: First Algorithms, Then Code. Springer; 2018.
2.C Programming Language” Brian W Kernighan, Dennis M Ritchie Second Edition, Prentice Hall. 3. “Test your C Skills”, Yashavant Kanetkar