Syllabus - Fundamentals of Computer Science (CB103)


Computer Science and Business System

Fundamentals of Computer Science (CB103)

I Semester

Unit I

General problem solving concepts

Algorithm, and Flowchart for problem solving with Sequential Logic Structure, Decisions and Loops.Imperative languages: Introduction to imperative language; syntax and constructs of a specific language (ANSI C)

Unit II

Types Operator and Expressions with discussion of variable naming and Hungarian Notation

Variable Names, Data Type and Sizes (Little Endian Big Endian), Constants, Declarations, Arithmetic Operators, Relational Operators, Logical Operators, Type Conversion, Increment Decrement Operators, Bitwise Operators, Assignment Operators and Expressions, Precedence and Order of Evaluation, proper variable naming and Hungarian Notation.

Unit III

Control Flow with discussion on structured and unstructured programming

Statements and Blocks, If-Else-If, Switch, Loops – while, do, for, break and continue, goto labels, structured and un-structured programming.Functions and Program Structure with discussion on standard library: Basics of functions, parameter passing and returning type, C main return as integer, External, Auto, Local, Static, Register Variables, Scope Rules, Block structure, Initialisation, Recursion, Pre-processor,Standard Library Functions and return types.

Unit IV

Pointers and Arrays

Pointers and address, Pointers and Function Arguments, Pointers and Arrays, Address Arithmetic, character Pointers and Functions, Pointer Arrays, Pointer to Pointer, Multi-dimensional array and Row/column major formats, Initialisation of Pointer Arrays, Command line arguments, Pointer to functions, complicated declarations and how they are evaluated. Structures: Basic Structures, Structures and Functions, Array of structures, Pointer of structures, Self-referral structures, Table look up, typedef, unions, Bit-fields

Unit V

Input and Output

Standard I/O, Formatted Output – printf, Formated Input – scanf, Variable length argument list, file access including FILE structure, fopen, stdin, sdtout and stderr, Error Handling including exit, perror and error.h, Line I/O, related miscellaneous functions.Unix system Interface: File Descriptor, Low level I/O – read and write, open, create, close and unlink, Random access – lseek, Discussions on Listing Directory, Storage allocator. Programming Method:Debugging, Macro, User Defined Header, User Defined Library Function, makefile utility.

Practicals

  • Algorithm and flowcharts of small problems like GCD

  • Structured code writing with:

    i. ii. Small but tricky codes Proper parameter passing iii. Command line Arguments iv. Variable parameter v. Pointer to functions vi. User defined header vii. Make file utility viii. Multi file program and user defined libraries ix. x. Interesting substring matching / searching programs Parsing related assignments

Reference Books

  • The C Programming Language, (Second Edition) B. W. Kernighan and D. M. Ritchi, PHI.

  • Programming in C, (Second Edition)B. Gottfried, Schaum Outline Series.