PIC Syllabus Theoryyy
PIC Syllabus Theoryyy
Unit I
Unit II
Control structures: Decision statements; if and switch statement; Loop control statements: while, for
and do while loops, jump statements, break, continue, goto statements.
Arrays: Concepts, One dimensional array, declaration and initialization of one dimensional arrays, two
dimensional arrays, initialization and accessing, multi-dimensional arrays.
Functions: User defined and built-in Functions, storage classes, Parameter passing in functions, call
by value, Passing arrays to functions: idea of call by reference, Recursion.
Strings: Arrays of characters, variable length character strings, inputting character strings, character
library functions, string handling functions. [8Hrs] [T2]
Unit III
Pointers: Pointer basics, pointer arithmetic, pointers to pointers, generic pointers, array of pointers,
functions returning pointers, Dynamic memory allocation. Pointers to functions. Pointers and Strings
Structures and unions: Structure definition, initialization, accessing structures, nested structures,
arrays of structures, structures and functions, self-referential structures, unions, typedef,
enumerations.
File handling: command line arguments, File modes, basic file operations read, write and append.
Scope and life of variables, multi-file programming. [8Hrs][T2]
Unit IV
C99 extensions. ‘C’ Standard Libraries: stdio.h, stdlib.h, assert.h, math.h, time.h, ctype.h, setjmp.h,
string.h, stdarg.h, unistd.h [3Hrs] [T1, R8]
Basic Algorithms: Finding Factorial, Fibonacci series, Linear and Binary Searching, Basic Sorting
Algorithms- Bubble sort, Insertion sort and Selection sort. Find the square root of a number, array
order reversal, reversal of a string [7Hrs][T1]
Textbooks:
1. How to solve it by Computer by R. G. Dromey, Prentice-Hall India EEE Series, 1982.
2. The C programming language by B W Kernighan and D M Ritchie, Pearson Education, 1988.
References:
1. Programming Logic & Design by Tony Gaddis, Pearson, 2nd Ed. 2016.
2. Programming Logic and Design by Joyce Farrell, Cengage Learning, 2015.
3. Engineering Problem Solving With C by Delores M. Etter, Pearson, 2013.
4. Problem Solving and Program Design in C by Jeri R. Hanly and Elliot B. Koffman, Pearson, 2016.
5. Structure and Interpretation of Computer Programs by Harold Abelson and Gerald Sussman with
Julie Sussman, MIT Press, 1985.
6. How to Design Programs by Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, and Shriram
Krishnamurthi, MIT Press, 2018.
7. ANSI/ISO 9899-1990, American National Standard for Programming Languages ‘C’ by American
National Standards Institute, Information Technology Industry Council, 1990 (C89).
8. ISO/IEC 9899:1999. International Standard for Programming Languages – C (ISO/IEC 9899) by
American National Standards Institute, Information Technology Industry Council, 2000 (C99).
9. INCITS/ISO/IEC 9899-2011.American National Standard for Programming Languages ‘C’ by
American National Standards Institute, Information Technology Industry Council, 2012 (C11).
Note:
1. At least 8 Experiments out of the list shall be performed by the students. Teachers may introduce
new experiments for the class in addition to above.
2. In addition Two Mini Projects based on the skills learnt shall be done by the students. Teachers
shall create the mini projects so that the same is not repeated every year. These mini projects may
be done in a group not exceeding group size of 4 students.
3. Usage of IDE like Visual Studio Community Edition, Codeblocks, etc. are recommended.