FCA

Instructor

Falguni Shah

Category

C Programming

Course : Programming in C

Description

Programming in C

Course Name : Programming in C

Course Level : Beginner

Course Duration : 3 Months

Classes per Month :  8 Classes per Month (Total 24 Classes)

About This Course :

C is a powerful and widely-used programming language developed in the early 1970s by Dennis Ritchie at Bell Labs. It's a general-purpose language that's known for its efficiency, flexibility, and low-level control over hardware. Here are some key aspects:.

·        Procedural Language:

·        Portability:

·        Efficiency:

·        Structured Language

·        Rich Standard Library

·        Pointers

·        Preprocessor Directives:

Overall, C's combination of efficiency, portability, and low-level control makes it a popular choice for a wide range of applications, from operating systems and device drivers to games and high-performance applications. However, its syntax and manual memory management can make it more challenging to learn compared to higher-level languages.

Learning Objectives:

 At the end of this course, the student will able to

·       Learn how write a simple program in C.

·        Learn to write the programs using looping and decision statements in C.

·        Learn the concepts of variable, constant, identifiers, keywords and different data types in C.

·        Learn to work with arrays in C.

·        Learn to define and use user defined functions and pass arguments in function in C.

·        Learn to create new data type using structure in C.

Read and write the data from files in C.

Course Content :

Lesson 1: Introduction to C Programming

·       History and significance of C

·       Characteristics of C

·       Structure of a C program

·       Compilation process

Lesson 2: Basic Syntax and Data Types

·       Variables and constants

·       Data types: integer, floating-point, character

·       Type modifiers: signed, unsigned, short, long

·       Basic input/output (printf() and scanf())

Lesson 3: Operators and Expressions

·       Arithmetic operators

·       Relational and logical operators

·       Assignment operators

·       Increment and decrement operators

·       Bitwise operators

·       Operator precedence and associativity

Lesson 4: Control Flow

·       Decision making: if-else statements

·       Switch-case statements

·       Loops: while, do-while, for

·       Nested control structures

·       Break and continue statements

Lesson 5: Functions

·       Function declaration and definition

·       Function prototypes

·       Passing arguments: call by value, call by reference

·       Return values

·       Recursion

·       Scope and lifetime of variables

Lesson 6: Arrays and Strings

·       Declaring and initializing arrays

·       Accessing array elements

·       Multi-dimensional arrays

·       String manipulation functions

·       Character arrays and pointers

·       String input/output

Lesson 7: Pointers

·       Understanding pointers and memory addresses

·       Pointer arithmetic

·       Pointers and arrays

·       Dynamic memory allocation: malloc(), calloc(), realloc(), free()

·       Pointer to functions

Lesson 8: Structures and Unions

·       Declaring and defining structures

·       Accessing structure members

·       Nested structures

·       Structures and functions

·       Unions and their applications

Lesson 9: File Handling

·       File operations: opening, reading, writing, closing

·       Sequential file access

·       Random file access

·       Error handling with files

Lesson 10: Preprocessor Directives

·       #include, #define, #ifdef, #ifndef, #if, #else, #endif

·       Macros and inline functions

·       Conditional compilation

Lesson 11: Standard Library Functions

·       Input/output functions (stdio.h)

·       Mathematical functions (math.h)

·       String manipulation functions (string.h)

·       Memory allocation functions (stdlib.h)