C PROGRAMMING
MULTIPLE CHOICE QUESTION
OLD QUESTION BANK
SAMPLE QUESTION 2080 AND SOLUTION

                                                                                                                           C programming notes, IOE Syllabus 

Course Objectives:

The primary goal of this course is to provide students with a solid foundation in the principles of programming and to impart practical skills in the C programming language. This course ensures that students comprehend the fundamental concepts of variables, data types, control structures, and functions within the context of C. Advanced topics such as pointers, structures, file handling and the Standard C Library are explored to broaden students' programming capabilities. Also, through project-based assessments and evaluations, students apply their knowledge to real-world scenarios, fostering creativity and project development skills.


1. Introduction to Computer Programming [3 hours]

1.1. Definition of a computer program and programming language

1.2. Types and Generations of Programming Languages

1.3. Problem-Solving using a Computer

1.3.1. Problem Analysis

1.3.2. Algorithm and Flowchart

1.3.3. Programming

1.3.4. Compilation, Linking and Execution

1.3.5. Debugging and Testing

1.3.6. Documentation

2. Overview of C Programming [3 hours]

2.1. Introduction to C programming

2.2. History and Importance of C 

2.3. C Headers and Library Functions

2.4. Basic Structure of a C Program 

2.5. Preprocessor Directives

2.6. Tokens in C (Character set, Keywords and Identifiers) 

2.7. Type Casting (Implicit and Explicit)

2.8. Data Types, Variables and Constants

2.9. IDE for C Programming

3. Operators and Expressions [4 hours]

3.1. Introduction to Operators and Expressions 

3.2. Arithmetic, Relational and Logical Operators

3.3. Assignment, Increment and Decrement Operators 

3.4. Conditional, Bitwise and Special Operators

3.5. Comma Operator, sizeof Operator

3.6. Evaluation and Type Conversion in Expressions 

3.7. Operator Precedence and Associativity 

4. Input and Output [3 hours]

4.1. Introduction to data I/O in C

4.2. Unformatted I/O

4.2.1. Character I/O 4.2.2. String I/O

4.2. Formatted I/O

4.2.1. Control String (flags, field width, precision, and specifier) \

4.2.2. Formatted I/O (scanf(), printf())

5. Control Structures [8 hours]

5.1. Introduction to Simple and Compound Statement

5.2. Sequential Statement

5.3. Branching Statement

5.3.1. Simple if Statement

5.3.2. if-else Statement

5.3.3. Nested if-else Statement

5.3.4. else-if Ladder

5.3.5. switch Statement

5.3.5. goto statement

5.4. Looping Statement

5.3.1. for loop

5.3.2. while loop

5.3.3. do while

5.3.4. Nested loop

5.5. Loop Interruption 

5.5.1. break

5.5.2. continue

6. Array and Pointer [7 hours]

6.1. Introduction to an Array 

6.2. One-dimensional Array 

6.3. Two-dimensional Array 

6.4. Multidimensional Array

6.5. Introduction to String

6.6. String Handling Functions

6.7. Definition of a Pointer

6.8. Pointer Declaration 

6.9. Pointer Arithmetic

6.9. Relationship between Pointer and Arrays 

7. User-defined Functions [6 hours]     

7.1. Introduction to Function

7.2 Advantages of Function 

7.3. Elements of User-defined Function

7.3.1. Function Definition 

7.3.2.   Function Prototype

7.3.3.   Function Parameters

7.4. Storage Class

7.5. Scope Rules

7.4. Category of Functions

7.4.1. Functions with no arguments and no return values

7.4.2. Functions with arguments and no return values

7.4.3. Functions with arguments and return values

7.4.4. Functions with no arguments and return values

7.5. Recursive functions

7.6. Function Call by Values and Reference 

7.7. Passing Array and String to Function 

8. Structures [5 hours]

8.1. Defining a Structure

8.2. Declaring and Accessing Structure Elements 

8.3. Initializing Structure

8.3. Array of Structure

8.5. Array as member to Structure

8.6. Pointer as member to Structure

8.7. Structure as a member to Structure

8.6. Passing and Returning Structures to/from Function

9. File management [4 hours]

9.1. Introduction

9.2. Binary and Text File in C 

9.3. File Opening Modes

9.4. Defining, Opening and Closing File 

9.5. Input-output operations on files

9.5.1. Character I/O (fputc(), fgetc())

9.5.2. String I/O (fgets(), fputs())

9.5.3. Formatted I/O (fscanf(), fprintf())

9.5.4. Record I/O (fwrite(), fread())

9.6 Overview of Random File Access

9.7. Error handling

10. Recent Trends in Programming [2 Hours]

10.1. Introduction to Object Oriented Programming (OOP)

10.2. Definitions of Class, Method and Object in OOP

10.3. Difference between Procedure Oriented and OOP

10.4. Overview of other High Level Programming Languages