Chapter 1 : C Programming History

NoTopicMCQ
1.1History of C ProgrammingSet 1 | Set 2
1.2C Programming History Chart-
1.3Father of C Programming-

Chapter 2 : C Programming Basics

NoTopicMCQ
2.1Features of C LanguageSet 1
2.2Application of C ProgrammingSet 1
2.3Compiler-
2.4Compiler Phases : Phase 1 | 2 | 3 | 4 | 5 | 6-
2.5Interpreter-
2.6Compiler Vs Interpreter-
2.7Execution of C Program-
2.8Type of Languages :-
Low Level Language-
Middle Level Language-
High Level Language-
2.9What is Comment in C ?-
2.10Types of Comment : Single Line | Multi Line-
2.11Difference Between Single and Multi Line Comment-

Chapter 3 : Variables and Constants

NoTopicMCQ
3.1Basic Building Blocks in C-
3.2Variable in C Programming :-
What is Variable ?-
Variable Type : Local Variable-
Variable Type : Global Variable-
Fundamental Attributes of Variable-
Rules for Declaring Variable-
L-Value of Variable-
R-Value of Variable-
3.3Constant in C-
3.4Type of Constants : Character | Integer | String-
3.5Backslash Character : List | Properties-
3.6C Programming Character Set-
3.7Keywords in C-
3.8Special Characters in C : Backslash Characters-
3.9Backslash Characters with Examples-
3.10White Space Characters in C-
3.11Expression in C-

Chapter 4 : Operators in C

NoTopicMCQ
4.1Assignment Operator-
4.2Arithmetic Operator-
4.3Increment Operator : Pre-Increment / Post-Increment-
4.4Decrement Operator : Pre-Decrement / Post-Decrement-
4.5Relational Operator-
4.6Logical Operator-
4.7Bitwise Operator-
4.8Conditional Operator-
4.9& and * Pointer Operators-
4.10Comma Operator-
4.11Dot Operator-
4.12Arrow Operator-
4.13[ ] and ( ) Operators-
4.14Operator Precedence Table and Associativity-

Chapter 5 : Primitive Data Types in C

NoTopicMCQ
5.1What is Data Type-
5.2Defining Type using Typedef-
5.3Integer : int | long-
5.4Character-
5.5Float : float | double-
5.6Enum-

Chapter 6 : Decision Making in C

NoTopicMCQ
6.1Conitional Statements - If Statement | If-Else-
6.2Nesting of Statements - Nested If-Else | Else-If Ladder-
6.3Multiple Condition inside If-
6.4Multiple Statements in If Block-
6.4Introduction to Switch Statement-
6.5Rules of Using Switch Case-
6.6Invalid Ways of Using Switch Case-
6.7Conditional Operation : ?: Operator | Rules-
6.8Jumping Statements : Goto Statement | Break-

Chapter 7 : Looping in C

NoTopicMCQ
7.1For Loop : Introduction | Flowchart-
7.2Different Ways of Writing For Loop-
7.3Nesting of For Loop-
7.4While Loop Introduction-
7.5Infinite While Loop-
7.6Do-While Loop-
7.7Differenciation : For Loop Vs While Loop-
7.8Differenciation : For Loop Vs Do-While Loop-
7.9Differenciation : While Loop Vs Do-While Loop-
7.10Unconditional Jump : continue | break | exit-

Chapter 8 : Array in C

NoTopicMCQ
8.1Introduction : What is an array ?-
8.2Limitations of Array-
8.3Application of Array-
8.4Types of an Array : 1-D | Multi Dimensional-
8.51-D Array Declaration-
8.6Initializing 2-D array-
8.7Memory Representation (Multi-Demensional array)-
8.8Accessing array Elements-
8.9Passing Array to Function : Entire Array | Element by Element-
8.10Accessing Array Randomly : How a[i] works ?-
8.11Initializing Array : Run-Time | Compile-Time-

Chapter 9 : Function in C

NoTopicMCQ
9.1What is Function ?-
9.2What is main Function ?-
9.3Why Function is Used ?-
9.4How Function Works ?-
9.5Types of Function 1 : No Argument and No Return Type-
9.6Types of Function 2 : Argument and No Return Type-
9.7Types of Function 3 : Argument and Return Type-
9.8Rules for Writing Function ?-
9.9Function Parameter : Formal | Actual-
9.10Function Definition | Calling | Prototype Declaration-
9.11Calling Function : Types | Ways Part 1 | Part 2-
9.12Parameter Passing Sequence in Function-
9.13Introduction to Recursive Function-
9.14Pass by Value and Pass by Address-

Chapter 10 : Pointer in C

NoTopicMCQ
10.1Pointer Basic : Basic Concept of Pointer-
10.2What is Pointer ?-
10.3Pointer Address Operator-
10.4Memory Organization of Pointer-
10.5Size of Pointer-
10.6Pointer Operator : Operator | Declaration-
10.7Pointer Operator : Initialization | De-Referencing-
10.8Void Pointer : Introduction | De-Referencing-
10.9Pointer Arithmetic Part 1 : Increment | Decrement-
10.10Pointer Arithmetic Part 2 : Addition | Subtraction-
10.11Pointer Arithmetic Part 3 : Differencing | Comparing-
10.12Illegal Arithmetic Operations on Pointer-
10.13Precedence : '*' and '&'-
10.14Meaning of (++*ptr) | Meaning of (*++ptr)-
10.15Double Pointer : Pointer to Pointer-
10.16Pointer to Constant-
10.17Pointer to Constant-
10.18Constant to Pointer vs Pointer to Constant?-
10.19Pointer to Array-
10.20Pointer to an Array of Function-
10.21Pointer to an Array of String-
10.22Pointer to Function-
10.23Pointer to an Structure | Union-
10.24Pointer to an Array of Structure | Array of Union-
10.25Application of Pointer in C-
10.26Common Mistakes while Using Pointer-
10.27Concept of Dangling Pointer-

Chapter 11 : Storage Classes in C

NoTopicMCQ
11.1Introduction to Storage Class in C-
11.2What does Storage Class of Variable Determines ?-
11.3Storage Class Scope-
11.4Block Scope : Advantages | Disadvantage-
11.5File Scope : Advantages | Disadvantage-
11.6Storage Class : Auto | Extern | Static | Register-

Chapter 12 : String in C

NoTopicMCQ
12.1Introduction to String Array-
12.2String Declaration-
12.3String Initialization-
12.4String Termination Character : NULL-
12.5Accepting String : scanf() | gets() | getchar()-
12.6Displaying String : printf() | puts() | putchar()-
12.7Arithmetic Operation on Characters-
12.8Converting String to Integer-
12.9String Library Functions : Strcat | Strcmp | Strcpy-
12.10String Library Functions : Strlen | Strstr-
12.11String Library Functions : sprintf() | sscanf()-
12.12Reading String with Space using scanf()-
12.13Difference between char *a and char a[] in C Programming-

Chapter 13 : Preprocessor in C

NoTopicMCQ
13.1Introduction to Preprocessor : Flowchart-
13.2Difference Between Function and Macro-
13.3Tasks Performed by Preprocessor-
13.4Simple Substitution using #define-
13.5Argumented Macro Substitution using #define-
13.6Nested Macro Substitution using #define-
13.7File Inclusive Directive : #include-
13.8Conditional Compilation : #if | #else | #elif-
13.9Conditional Compilation : #ifdef | #ifndef | #undef-
13.10Conditional Compilation : #pragma | #pragma warn-
13.11Conditional Compilation : #pragma startup and exit-
13.12Common Mistakes while using Preprocessor-
13.13Applications of #define Preprocessor-

Chapter 14 : Bitwise Operator in C

NoTopicMCQ
14.1Introduction to Bitwise Operator-
14.2Bitwise Operator : AND | OR | XOR-
14.3Bitwise Operator : Left Shift | Right Shift-
14.4Bitwise Operator : One's Compilment-
14.5Concept of Masking in C Programming-
14.6How to use Bitwise Operator to Shift a Negative Number ?-

Chapter 15 : Structure in C

NoTopicMCQ
15.1Introduction to Structure -
15.2Declaring Structure Variable -
15.3Typedef to Create Structure Type-
15.4Initializing Structure Variable-
15.5Declaring Structure : Important Things-
15.6Some Structure Declarations and Meaning-
15.7Accessing Structure Members-
15.8Accessing Element in Structure Array-
15.9Initializing Array of Structure-
15.10Passing Array of Structure to Function-
15.11Pointer Within Structure-
15.12Bit Manipulation Using Structure -
15.13Pointer to Structure-
15.14Structure having Integer Array as Member-
15.15Passing Structure to Function-
15.16Array of Pointer to Structure-
15.17Pointer to Structure Within the Same Structure-
15.18Pointer to Array of Structure-
15.19Array of Structure-
15.20Structure within Structure (Nested Structure)-
15.21Calculate Size of Structure | Without sizeof operator-
15.22Uses of Structure | Application of Structure-

Chapter 16 : Union in C

NoTopicMCQ
16.1Introduction to Union-
16.2Declaring Union-
16.3Accessing Members of Union-

Chapter 17 : File Handling in C

NoTopicMCQ
17.1Introduction to File Handling in C Programming-
17.2Type of Streams | FILE structure and FILE pointer-
17.3Types of Files : Text | Binary-
17.4Opening and Defining FILE-
17.5File Operations : Open a File | File Opening Modes-
17.6File Operations : Close a File | End of File (feof / EOF)-
17.7Character Input/Output : Getc | Fgetc-
17.8Character Input/Output : Putc | Fputc-
17.9Character Input/Output : Fgets | Fputs-
17.10Formatted Input/Output : Fprintf | fscanf-
17.11Direct Input/Output : Fwrite | Fread-
17.12Random Access : Ftell | Rewind | Fseek-
17.13Error Handling : Possible Ways-
17.14Database Operation : Add Record | Display Record-
17.15Database Operation : Modify Record | Append Record-
17.16Database Operation : Delete Logically | Physically-
17.17File Operation Functions : fflush | rename | remove-