You are on page 1of 6

Course Code

A1501

Course Title

COMPUTER PROGRAMMING

Course Structure

Lectures

Tutorials

Practicals

Credits

Course Coordinator

Prof L V Narasimha Prasad, Professor

Team of Instructors

Mr. E. Krishna Rao Patro, Ms. B. Padmaja

I. Course Overview:
The course helps the students to solve Engineering problems and implementation of projects through computer programming. The course
also helps the students to write selection test and face interviews for software jobs. The Course is important because most of the application
and system software are developed and are being developed in C programming language. Thorough knowledge of the language is essential
for software professional career. The learning approach of the course is each feature and syntax of the language will be explained through
one or more examples. This is implemented by making the student write the programs to solve Mathematical, Engineering and simple data
processing problems. The course is implemented through lecture, tutorial and laboratory sessions

II. Prerequisite(s):
Level

Credits

UG

Periods / Week

Prerequisites
Mathematical background and Logical Thinking

III. Marks Distribution:


Sessional Marks

University End

Total

Exam Marks

Marks

Continuous Assessment Tests


There will be two Continuous Assessment Tests in theory courses having a weight age of
10 marks to be answered in two hours duration each. The first Continuous Assessment
Test will be held in the 7 th week with the announced schedule in the first two units of
syllabus. The second Continuous Assessment Test will be held at the end of the semester
with the announced schedule in the fourth and fifth units of syllabus. Marks shall be
awarded considering the average of two Continuous Assessment Tests in each course. In

75

case a student does not appear in the Continuous Assessment Tests due to any reason

100

whatsoever, will get zero marks(s).


Mid Semester Test
There will be one Mid Semester Test in theory courses for a maximum of 15 marks to be
answered in two hours duration. The Mid Semester Test will be held in the 10 thweek with
the announced schedule in the first three units of syllabus. In case a student does not
appear in the Mid Semester Test due to any reason whatsoever, will get zero marks(s).

IV. Evaluation Scheme:


Continuous Assessment Test

10 marks

Mid Semester Test

15 marks

End Semester Examination

75 marks

V. Course Objectives:
The course presents basics of C programming including Data representation, Control Structures, Functions, Arrays, Pointers, Strings, and
Files that aims to:
I.

Learn the basic components of computing environment.

II.

Design and develop algorithms and flowcharts for solving a problem.

III.

Understand the importance of control flow statements in programming.

IV.

Understand structured programming approach to solve real time applications.

V.

Recognize the importance of dynamic memory allocation over static memory allocation.

VI.

Demonstrate how to handle the persistent storage area.

VI. Course Outcomes:


Upon completion of this course, students will acquire knowledge about:
1.

Apply the principles of structured programming in problem solving.

2.

List out the salient features and applications of C programming language.

3.

Demonstrate the techniques for implementing applications using C programming.

4.

Apply basic data structure like array in simple data processing applications.

5.

Explain the importance of user defined functions to implement real time applications.

6.

Distinguish user defined data types like structures and unions.

7.

List out the difference between iteration and recursion.

8.

Predict the behavior of variables using different types of storage classes.

9.

Use file concept to read/write data in secondary storage area.

10.

Apply C programming to do variety of tasks like low level programming, networking, OS related operations and so on.

VII. How Course Outcomes are assessed:


Program Outcomes

An ability to apply knowledge of computing, mathematical foundations, algorithmic

Level

principles, and computer science and engineering theory in the modeling and design of

Proficiency
assessed by
Assignments, mini
projects.

computer-based systems to real-world problems (fundamental engineering analysis skills)


b

An ability to design and conduct experiments, as well as to analyze and interpret data

--

Assignments, mini

(information retrieval skills)


c

An ability to design , implement, and evaluate a computer-based system, process,


component, or program to meet desired needs, within realistic constraints such as

projects,

economic, environmental, social, political, health and safety, manufacturability, and

seminars.

sustainability (Creative Skills)


d

An ability to function effectively on multi-disciplinary teams (team work)

--

An ability to analyze a problem, identify, formulate and use the appropriate computing and

Assignments, mini

engineering requirements for obtaining its solution (engineering problem solving skills)
f

An understanding of professional, ethical, legal, security and social issues and

projects.
N

--

responsibilities (professional integrity)


g

An ability to communicate effectively both in writing and orally (speaking / writing skills)

--

The broad education necessary to analyze the local and global impact of computing and

--

Assignments, mini

engineering solutions on individuals, organizations, and society (engineering impact


assessment skills)
i

Recognition of the need for, and an ability to engage in continuing professional

projects,

development and life-long learning (continuing education awareness)

seminars.

A Knowledge of contemporary issues (social awareness)

--

An ability to use current techniques, skills, and tools necessary for computing and

Assignments, mini

engineering practice (practical engineering analysis skills)


l

An ability to apply design and development principles in the construction of software and

projects.
N

--

Assignments, mini

hardware systems of varying complexity (software hardware interface)


m An ability to recognize the importance of professional development by pursuing
postgraduate studies or face competitive examinations that offer challenging and

projects,

rewarding careers in computing (successful career and immediate employment).

N = None

S = Supportive

seminars.

H = Highly Related

VIII. Syllabus:
UNIT - I
INTRODUCTION TO COMPUTERS: Introduction to computers, computer systems, computingenvironments, computer languages, creating
and running programmes, software development method, algorithms, pseudo code, flow charts, applying the software development method.
INTRODUCTION TO C LANGUAGE: Basic structures of C language, C tokens, data types and sizes,declaration of variables, assigning
values
OPERATORS AND EXPRESSIONS: Statements, arithmetic, relational and logical operators, incrementand decrement operators, conditional
operator, bitwise operators, type conversions, expressions and evaluation, input and output statements, sample programs.
UNIT - II
CONTROL STATEMENTS: If and switch statements, while, do while and for statements, sampleprograms.
FUNCTIONS: Defining and accessing, passing arguments, function prototypes, library functions, staticfunctions, user defined functions,
recursive functions, variables and storage classes, scope rules, block structure, header files, C preprocessor, example C programs.
ARRAYS: Defining and processing, one dimensional and two dimensional arrays, initialization, passingarrays to a function, multi dimensional
arrays, command line arguments.
UNIT - III
STRINGS: Defining and operations on strings, string variables declaration, reading, writing. Basics offunctions, parameter passing, string
handling functions.
POINTERS: Basic Concepts, pointer to pointer, passing pointers to a function, operations on pointers,pointer arithmetic, pointers and arrays,
arrays of pointers, function pointers, dynamic memory allocation.
UNIT - IV
STRUCTURES AND UNIONS: Structure definition, initializing, assigning values, passing of structures asarguments, array of structures,
pointers to structures, self reference to structures, unions, typedef, bit fields, sample programs.
UNIT - V
CONSOLE AND FILE I/O: File, types of files, file vs. console, file structure, file attributes, file operations,standard I/O, formatted I/O, sample
programs.

IX. List of Text Books / References / Websites / Journals / Others


Text Books:
B. A. Fouruzan and R. F. Gilberg (2006), Computer Science: A structured programming approach using C, 3 rd Edition, Thomson

1.

Publications, New Delhi.


Yashawanth Kanethkar (2008), Let us C, 8th Edition, Jones & Bartlett Publishers, India.

2.

Reference Books:
1.

Herbert Schildt (2000), C: The Complete Reference, 4th Edition, New Delhi, Osborne Mc Graw Hill.

2.

B. W. Kerninghan and Dennis M. Ritche (1988), The C Programming Language, 2 nd Edition, Prentice Hall Software Series,
India.

3.

Stephen G.Kochan (2004), Programming in C, 3 rd Edition, Pearson Education Private Limited.

X. Course Plan:
The course plan is meant as a guideline. There may probably be changes.
Lecture
No.
1-2

Course Learning Outcomes

Identify basic parts of computers

Topics to be covered

Introduction to computers, computer systems,

Reference

T1:1

computing environments
3

List various computer languages used

computer languages, creating and running

T1:1.1

programs
4-5

Apply SDLC for solving a problem.

software development method, applying the

T1:1.2

software development method


6-7

Develop algorithm and flowchart for a

algorithms, pseudo code, flow charts

T1:1.3

Identify the basic structure of a C

INTRODUCTION TO C LANGUAGE: Basic

T1:1.4

program.

structures of C language

List out the building blocks and data

C tokens, data types and sizes

problem.
8-9

10

T1:1.5

types used in C.
11-14

Distinguish types of operators used and OPERATORS AND EXPRESSIONS: Statements,

T1:1.6

its usage.

T1:2.1

arithmetic, relational and logical operators,


increment and decrement operators, conditional
operator, bitwise operators

15

Evaluate mathematical expressions

type conversions, expressions and evaluation

T1:2.2

Write sample C programs.

input and output statements,sample programs.

T1:2.3

Identify types of if statements.

CONTROL STATEMENTS: If and switch

using precedence rules.


16
17-18

T1: 3.1.1-3.1.3

statements
19-21

22

23

Distinguish different types of loops and

while, do while and for statements,

its usage.

SAMPLE PROGRAMS.

Use modular approach to reduce the

FUNCTIONS: Defining and accessing, passing

complexity of code.

arguments, function prototypes

List out various ways of writing

library functions, static functions, user defined

functions. Distinguish library vs user

functions, recursive functions

T1: 3.4
T1:3.2.1-3.2.2
T1:3.2.3

T1.3.2.4

defined functions.
24

Classify storage classes

variables and storage classes, scope rules

T1:3.2.5

25

Apply preprocessor directives in

block structure, header files, C preprocessor,

T1: 4.1

programs.

example C programs.

Define the basic concept of arrays

ARRAYS: Defining and processing

List out types of arrays

one dimensional and two dimensional arrays,

26 - 28

T1:4.2 - 5.1

multi dimensional arrays


29

Discuss how to pass command line.

Passing arrays to a function, command line

T1:5.2

arguments.
30-32

Illustrate operations on strings.

STRINGS: Defining and operations on strings,


string variables declaration, reading, writing.

33-35

List out various string handling functions string handling functions

T1:5.4 T1:7.1.17.1.2
T1:7.1.3-7.1.4

and its usage.


T1:7.1.5
36

Describe the basic concept of pointers

POINTERS: Basic Concepts, operations on

T1.7.1.6

pointers, pointer arithmetic


37-39

List out the various usage of pointers .

pointer to pointer, passing pointers to a function,

T1:7.2

pointers and arrays, arrays of pointers, function


pointers
40

Demonstrate static vs dynamic memory dynamic memory allocation

T1:7.3

allocation
41

Describe the basic concept of

Structures: Structure definition, initializing,

structures.

assigning values, passing of structures as

T1:7.4

arguments
42

Illustrate the usage of structures.

array of structures, pointers to structures

T1:6.1

48

Distinguish structures vs. unions.

self reference to structures, unions

T1:6.2

Explain the importance of typedef and

Typedef, bit fields, sample programs

T1:6.3

CONSOLE AND FILE I/O: File, types of files, file

T2:6.4

49-50

bit field
51-52

Describe the basic file concepts

vs. console
53-55

List out various file attributes,

file structure, file attributes, file operations

T1:8.2 - 8.6

State various file operations


56-59

60

Distinguish between standard I/O and

standard I/O

formatted I/O

formatted I/O

T1:8.4
T1:8.5

Illustrate sample C programs using files. sample programs using files.

T1:8.6

XI. Mapping course objectives leading to the achievement of the programme outcomes:
Program Outcomes

Course
Objectives

IV
V

II
III

S = Supportive

H = Highly Related

XII. Mapping course outcomes leading to the achievement of the programme outcomes:
Program Outcomes

Course
Outcomes

1
2
3
4

H
S
H

S
H

10

H
S = Supportive

Prepared By
Date

:
:

H = Highly Related

Ms. B. Padmaja, Associate professor


16 January, 2013

You might also like