C Programming CSA1500 CHO
C Programming CSA1500 CHO
PROGRAM OUTCOMES:
PO 2: Problem Solving & Analysis: Identify, Formulate, Analyse and Solve Complex
Scenarios related to Computer Applications.
1
PO 5: Modern Tool usage: Effectively apply relevant ICT Tools and digital tools to
carry out Computer Application Attributes.
PO 7: Profession and Society: Apply the knowledge of the values and beliefs of
multicultural society and a global perspective in the profession.
PO 10: Communication: Express thoughts and ideas effectively in writing and oral
communication
PO 12: Life-long Learning: Recognize the need for and have the preparation and
ability to engage in independent and life-long learning in the broadest context of
societal and technological change.
COURSE DESCRIPTION:
This Course will provide an introduction to foundational concepts of computer programming to students
of BCA program. Topics covered in this Course are problem formulation and development of simple
programs, Pseudo code, Flow Chart, Algorithms, data types, operators, decision making and branching,
2
looping statements, arrays, functions, structures, Union, File handling and pointers. In the lab session
students are required to solve problems based on the above concepts to illustrate the features of the
structured programming.
COURSE OBJECTIVE:
The objective of the course is to familiarize the learners with the concepts of Problem-Solving Using C
and attain Skill Development through Experiential Learning techniques.
COURSE OUTCOMES: On successful completion of the course the students shall be able to:
CO.N0 PO.0 PO.0 PO.0 PO.0 PO.0 PO.0 PO.0 PO.0 PO.0 PO.1 PO.1 PO.1
. 1 2 3 4 5 6 7 8 9 0 1 2
1 M M L L M L M M M
2 M M M M H M M M
3 M H H H H M M H H
4 M H H H H M L M M M M H
3
TABLE 2b: CO PSO Mapping ARTICULATION MATRIX
CO. No. PSO-1 PSO-2 PSO-3
CO1 H M M
CO2 M M H
CO3 H M H
CO4 H H H
Type Casting, Expression Evaluation, Conditional and unconditional statement, Looping statements
4
REFERENCE MATERIALS:
Textbook:
REFERENCE BOOKS:
ONLINE RESOURCES:
https://onlinecourses.nptel.ac.in/noc22_cs32/preview (NPTEL)
5
Students are encouraged to read the course handout completely.
Teaching/Learning materials will be uploaded through Teams/One Drive/ERP
Students should come prepared with the basics of the topics that will be covered in the
next class.
Preparatory work for lab sessions is mandatory.
Practice more exercises as self-study.
Suggested to view NPTEL videos on related topics.
NOTICES:
All course-related information will be displayed on the PSCS notice board.
All the notices related to this course will be communicated through email and posted in
LMS.
Chamber Consultation Hour: Will be announced.
Delivery Mode:
6
COURSE CONTENT ANS TASK SCHEDULE FOR LAB COMPONENT:
LOL HOL ** At
end of
semest
er
(Highe
Topic & (Lower please
r
Learning Order update
Order
Sessi Objective Learni Course Teaching wheth
S.N Lesson Learni Referen
on ng ) Outco Pedagogi er
o. Title ng ) ce
No. me es activity
was
done
LO:
Students
shall able
to
Program
Integration
LO1:
Summarize
CO1
the
Course L CO2 Interactiv
1 L1 relevance - T1, R1,
Overview 1 CO3 e Lecture
of the
CO4
course with
program
7
the basic
block
diagram of
a computer
and
describe
the
function of
each main
component
.
SDG No: 1
3 Compute
r basics
L1: What
are the
main
component
L3 s of a
computer
system?
L2: Explain T1 –
the L1 Pg.No.
PPT/
difference L2 01
CO1 Interactiv
between R1&R2
e Lecture
primary
memory
and
secondary
memory
with
examples.
4.
8
in problem
solving?
Give a
simple
example.
LO2:
Explain the
difference
between an
algorithm
and a
flowchart
with a
suitable
example
problem.
SDG No: 3
Tokens
LO1: What
are tokens
in C? List
different
types of
tokens
used.
L1
LO2:
L2 PPT/ T1 –
Explain
CO1 Interactiv Pg.No.
5 L5 with
e Lecture 02 - 03
examples
how
identifiers
and
keywords
differ in C
programmi
ng.
SDG No:3
9
functions
in C and
mention
their
uses.
L2:
Explain
the
differenc
e
between
scanf()
and
gets()
functions
with
suitable
examples
.
SDG No:3
Structure
of C
program
L1: What is
the basic
structure of
aC
program? L1
PPT/ T1 –
L2: List L2
7 L7 CO1 Interactiv Pg.No.
any four
e Lecture 04
sections
commonl
y present
in a C
program.
SDG No:3
10
any four
sections
commonl
y present
in a C
program.
End of Module 1
Module- Type Interactiv
2 Casting CO2
e Lecture
Control
stateme L1: What
nts in is type
C casting in
C
program
ming?
L2:
Explain
the
differenc
9 L9 e PPT/ T1 –
between L1 CO2 Interactiv Pg.No.
implicit L2 e Lecture 19
type
casting
and
explicit
type
casting
with
examples
.
SDG No:4
10 L10 Expressio L1 CO2 PPT/ T1 –
n Interactiv Pg.No.
Evaluation e Lecture 19
L1: What
is an
expressio
n in C
program
ming?
L2:
Explain
11
how
operator
preceden
ce and
associati
vity
affect the
evaluatio
n of an
expressio
n in C,
with an
example.
SDG No:4
Condition
al :
if, if-else,
nested if-
11 L11 else, and
else-if
ladder
L1: What
is the
purpose of
a
conditiona
l
statement PPT/ T1 –
in C L1 CO2 Interactiv Pg.No.
programm e Lecture 19
ing?
L2:
Explain
the
difference
between
if-else and
else-if
ladder
statement
s with an
example.
SDG No:4
Looping
statement
s: L1
Self- T1 –
12 L12 Entry- L2
controlled
CO2 learning Pg.No.
loops topics 20-30
Examples:
for loop,
12
while
loop,
L1: Name
two entry-
controlled
loops
used in C
programm
ing.
L2:
Explain
how a for
loop
works as
an entry-
controlled
loop with
an
example.
SDG No:4
Exit-
controlled
loops:
L1: Which
loop in C is
an example
PPT/
of an exit-
Interactiv
controlled L1
e T1 –
loop? L2
13 L13 CO2 Lecture/ Pg.No.
L2: Explain
Participati 30-45
how a do-
ve
while loop
Learning
works as an
exit-
controlled
loop, with
an
example.
SDG No:8
Nested
Loops :
L1: What is
a nested PPT/ T1 –
14 L14 loop? L1 CO2 Interactiv Pg.No.
L2: Explain e Lecture 43
how nested
loops work
with an
13
example to
display a
multiplicati
on table
from 1 to 5.
SDG No:8
15 L15 Pattern
printing
using
nested
loops:
L1: What is
meant by
nested
loops in the
context of
pattern
PPT/ T1 –
printing?
L1 CO2 Interactiv Pg.No.
L2: Write a
e Lecture 43
program
using
nested
loops to
print the
following
right-
angled
triangle
pattern
SDG No:9
End of Module 2
Interactiv
CO3
e Lecture
One
dimension
Module al Array
3: Arrays L1: What
16 L16 is a one- L1
and PPT/ T1 –
Strings dimensio L2
CO3 Interactiv Pg.No.
nal array e Lecture 44
in C
program
ming?
L2:
14
Explain
how to
declare,
initialize,
and
access
elements
of a one-
dimensio
nal array
with an
example.
SDG No:9
Array
operations
L1: What is
meant by
array
operations
in C
programmi PPT/
ng? Interactiv
L1
L2 : Explain e T1 –
L2
how to Lecture/ Pg.No.
17 L17 CO3
insert an Technolo 44-45 -
element at gy 53
a specific Enabled
position in Learning
a one-
dimensiona
l array with
an
example.
SDG No:13
15
a two-
dimensiona
l array in C
programmi
ng?
L2: Explain
how to
declare and
initialize a
two-
dimensiona e Lecture 54
l array to
store the
marks of 3
students in
4 subjects.
SDG No:13
19 L19 2D Array L1 CO3 Technolo T1 –
operations L2 gy Pg.No.
L1: What Enabled 59
are Learning/
common Active
operation
Learning
s that
can be
performe
d on a
two-
dimensio
nal
array?
L2:
Explain
how to
find the
sum of
all
elements
in a two-
dimensio
nal array
with an
example.
SDG No:15
16
Strings
and its
operations
L1: What
is a
string in
C
program
ming?
L2:
Explain
how to PPT/ T1 –
L1
20 L20 concaten CO3 Interactiv Pg.No.
L2
ate two e Lecture 75
strings in
C using a
standard
library
function,
with an
example.
SDG No:15
21 L21 String L1 CO3 Technolo T1 –
manipulati L2 gy Pg.No.
on Enabled 75
functions.
Standard Learning
library
string
functions
L1: :
Name any
two
standard
library
functions
used for
string
manipulati
on in C.
L22 L2:
L22 Explain
the
purpose of
strcmp()
and
strcpy()
functions
17
with
examples.
SDG No:17
Character-
wise string
Technolo
operations L1 T1 –
gy
L2 CO3 Pg.No.
Enabled
77
Learning
SDG No:16
End of Module 3
Categorie
s of
functions
L1: What
are the
different Interactiv
CO4
categorie e Lecture
s of user-
defined
functions
in C
L2: Explain
the
Module
difference
23 L23 4:
Function between
s, functions
with
arguments
and return
PPT/ T1 –
value, and
L1 CO4 Interactiv Pg.No.
functions
e Lecture 97
without
arguments
and
without
return
value, with
examples.
SDG No:15
18
concept of
modular
programm
ing:
L1: What
is modular
programm
ing?
L2:
Explain
how PPT/ T1 –
24 L24 modular L1 CO4 Interactiv Pg.No.
programm e Lecture 97
ing
improves
code
readability
and
maintaina
bility, with
an
example.
SDG No:15
user
defined
datatypes
L1: Name
two user-
defined
data types
in C.
L2:
Explain PPT/ T1 –
the use of
26 L26 L1 CO4 Interactiv Pg.No.
struct in C
with an e Lecture 100
example
program
to store
and
display
student
informatio
n.
SDG No:16
Structures
L1: What
is a PPT/ T1 –
27 L27 structure L1 CO4 Interactiv Pg.No.
in C e Lecture 100
programm
ing?
L2:
19
Explain
how to
declare
and
access
members
of a
structure
with an
example.
SDG No:16
28 L28 union
L1: What is
a union in C
programmi
ng?
L2: Explain
the
difference
between a
PPT/ T1 –
structure
L1 CO4 Interactiv Pg.No.
and a union
e Lecture 100
with an
example.
SDG No:17
20
and use a
pointer to
access the
value of a
variable,
with an
example.
SDG No:17
File
handling
L1: What
is file
handling
in C
programm
ing?
L2:
Explain
the
difference PPT/ T1 –
L1
between CO4 Interactiv Pg.No.
fopen()
L2
e Lecture 121
modes "r"
and "w"
with
examples.
29 L29
Vulnerabilit
y
Assessment
LO1: What L1
methods L2 PPT/ T1 –
are used to CO4 Interactiv Pg.No.
classify and e Lecture 121-138
prioritize
vulnerabiliti
es
discovered
during an
21
assessment
?
LO2:
Explain
how to
interpret
the results
of a
vulnerabilit
y scan,
including
false
positives
and false
negatives
SDG No:17
30 L30 Revision
End of Module 4
SDGs – MAPPING:
Module: III: Arrays Arrays and Strings: 1D SDG 4: Quality Strengthens data handling and
and Strings and 2D arrays, Education representation skills crucial for
22
SDG 8: Decent Work advanced computing and jobs in IT
operations, string
and Economic sectors, promoting lifelong learning
manipulation.
Growth and employability.
ASSESSMENT SCHEDULE
Module 1, 2 120
CO1 & 50 25% As per
2 Mid Term Exam Minutes COE
CO2
Assessment 2 – CO1, CO2,
Module 3 to 11.11.2
Activity based CO3, CO4 NA 25 10%
3 Module 4 5
learning
CO1, CO2, As
4 Module 1 to CO3, CO4 180 100 50%
End Term Exam per
Module 4 Minutes
COE
23
CONTACT TIMINGS IN THE CHAMBER FOR ANY DISCUSSIONS:
As per the prior appointment from the faculty, students can meet the faculty member. Will be
announced in the class.
SAMPLE THOUGHT PROVOKING QUESTIONS: (Here type sample typical questions for students
’reference, only a few but those few should be thought provoking type)
24
highlighting memory usage.
1. Explain the different types of
looping statements in C (for,
while, and do-while).
Compare them based on
syntax, flow of control, and
suitable use cases. Write
example programs for each
2 loop to display the numbers 10 CO2 Understand
from 1 to 10.
2. Write a program using nested
if-else statements to find the
largest of three numbers
entered by the user. Explain
the logic of the program in
detail and illustrate the flow
using a flowchart.
4 1. Analyze the algorithm you 10 CO3 Analyze
would use to find both the
maximum and minimum
values in a one-dimensional
array of integers. Discuss how
the algorithm's efficiency can
be improved, and identify
possible pitfalls if the array
contains duplicate extreme
values.
2. Given a string processing
program that counts vowels,
consonants, digits, and special
characters, analyze how the
program can be modified to
handle mixed-case input and
Unicode characters efficiently.
Compare this approach to the
standard ctype.h functions in
C.
3. Analyze the steps involved in
transposing a two-
dimensional matrix. Discuss
the implications of performing
this operation in-place versus
using an auxiliary matrix.
Compare the memory and
time complexity of both
approaches, and suggest
scenarios where each would
25
be preferred.
1. Design a C program to
manage student records using
structures. Your program
should include the following
features:
i. Accept and store details
such as name, roll
number, and marks in 3
subjects for n students.
ii. Calculate the total and
average marks for each
student.
iii. Display the student
details along with total
and average.
iv. Analyze the advantages of
using structures for this
problem compared to
using separate arrays.
Evaluate how this
approach improves code
5 20 CO4 Analyze
readability and
maintainability.
2. Write a C program using file
handling to perform the
following tasks:
I. Accept data (name, employee
ID, salary) for n employees
and write them to a file.
II. Read the file content and
display all employee details.
III. Find and display the details of
the employee with the
highest salary.
IV. Analyze the importance of file
handling in real-world
applications. Evaluate the
challenges that may arise
when handling large data
files, and suggest possible
solutions to overcome them.
26
TABLE 8: TARGET SET FOR ATTAINMENT OF EACH CO AND ATTAINMENT ANALYSIS AFTER RESULTS
Sl.no C.O. Course Outcomes Threshold Target set Actual C.O. Remarks on
No. Set for for Attainment attainment
the CO attainment In &Measures
in Percentage to enhance
percentage the
attainment
* *
01 CO1 Identify the solution to the
problem through
programming
75% 75%
APPROVAL:
27
Signature of the Chairperson D.A.C.
Name and signature of the Instructor In-Charge (s) AFTER completing entries in Table number 3 and 8 at
end of semester:
Name and signature of the DAC Chairperson AFTER completing entries in Table number 3 and 8 at end of
semester:
Learning Outcomes Verbs at Each Bloom Taxonomy Level to be used for writing the course Outcomes.
28
The 17 Sustainable Development Goals (SDGs):
29
SDG Goal Title Relevance to CSE
30
Data analytics, AI, and mobile technologies to deliver financial
SDG 1 No Poverty
inclusion, aid distribution, and policy planning.
Good Health and Well- Health informatics, AI in diagnostics, wearable technologies, and
SDG 3
being telemedicine platforms.
Clean Water and IoT systems for water quality monitoring, smart grids for sanitation
SDG 6
Sanitation infrastructure.
Affordable and Clean Smart grid technologies, energy forecasting using AI, and
SDG 7
Energy optimization algorithms for energy management.
Decent Work and Automation, digital platforms for remote work, and upskilling via
SDG 8
Economic Growth online learning platforms.
Industry, Innovation, and Core area for CSE – development of intelligent systems, robotics,
SDG 9
Infrastructure IoT, and scalable cloud infrastructures.
Sustainable Cities and Smart city solutions, traffic optimization, urban planning via GIS
SDG 11
Communities and AI technologies.
Peace, Justice and Strong Cybersecurity, e-Governance platforms, blockchain for transparent
SDG 16
Institutions systems, digital forensics.
31
32