Commonly Asked C Programming Interview Questions
1) Who invented C Language?
Dennis Ritchie in 1972 developed a new language by inheriting the features of both BCPL and B and adding additional features. He named the language as just C.
2) Who invented B Language?
Ken Thomson at AT&T Bell Labs developed a language and named it B. Even the B language was found to have some short comings to support development of both business
applications and system software.
3) Who invented BCPL Language?
Basic Combined Programming Language(BCPL) was developed by Martin Richards, Cambridge university.
4) Why C Language?
C is one of the high level languages. It is a general purpose language, which means it can be used to write programs of any sort.
5) What are the features of C Langauges?
=> In C one can write programs like that of high level languages as in COBOL, BASIC, FORTRAN etc. as well as it permits very close interaction with the inner workings of the computer.
=> It is a general purpose programming language. It is usually called system programming language but equally suited to writing a variety of applications.
=> It supports various data types
=> It follows the programming style based on fundamental control flow constructions for structured programming
=> Functions may be predefined or user defined and they may return values of basic types, structures, unions or pointers.
6)What are the advantages of c language?
=> Easy to write
=> Rich set of operators and functions that are built–in
=> Support for bit–wise operation
=> Flexible use of pointers
=> Direct control over the hardware
=> Ability to access BIOS/DOS routines
=> Interacting using Interrupts
=> Ability to write TSR programs
=> Ability to create .COM files
=> Ability to create library files (.LIB)
=> Ability to write interface programs
=> Incorporating assembly language in C program
7) What are the disadvantages of c language?
=> C is considered difficult to learn
=> Because of its conciseness, the code can be difficult to follow
=> It is not suited to applications that require a lot of report formatting and data file manipulation
8) What are the salient features of c languages?
=> The following are the salient features of C language are :
=> C is called a middle level language
=> C supports structured design approach
=> C is extensible
=> C is rich in data types and operators
=> C is portable
9) What is a header file?
Header files provide the definitions and declarations for the library functions. Thus, each header file contains the library functions along with the necessary definitions and declarations. For example, stdio.h, math.h, stdlib.h, string.h etc.
10) What is character set?
Character set is the set of characters allowed and supported in the programming language.
Generally a program is a collection of instructions, which contain groups of characters. Only a limited set of characters is allowed to write instructions in the program.
11) What is C token?
The smallest individual units of a C program are known as tokens.
12) List the different types of C tokens?
=> Constants
=> Identifiers
=> Keywords
=> Operators
=> Special symbols
=> Strings
13) What is a string?
A string is a sequence of characters ending with NUL. It can be treated as a one–dimensional array of characters terminated by a NUL character.
14) What are qualifiers?
Qualifiers or modifiers are identifiers that may precede the scalar data types (except float) to specify the number of bits used for representing the respective type of data in memory. The qualifiers in C are short, long, signed, and unsigned.
15) What is a function?
A function is a set of statements to perform a specific task.
16) What is a constant?
A constant is a value that does not change during the program execution. A constant used in C does not occupy memory.
17) What are the different types of constants?
=> There are five types of constants. They are :
=> Integer constants
=> Floating point constants
=> Character constants
=> String literals
=> Enumeration constants
18) What is variable?
An identifier is used to identify and store some value. If the value of the identifier is changed during the execution of the program, then the identifier is known as variable.
19) What are the rules for the identifier?
=> The first character must be an alphabet or underscore (_)
=> Digits may be included in the variable
=> The maximum number of characters in a word are 32 (It may vary depending upon the platform)
=> No other special characters are allowed.
20) What are global variables?
Global Variables are those, which are required to be acccessed by all the functions defined after their declaration. So, the variables declared before the main {) can be acccessed by all the functions, which follow their declaration.
21) What is a keyword?
Keywords are those words of C which have predefined meaning assigned by the C language.
They form a part of the database required by the C compiler.
22) What are the different types of c instructions?
=> There are basically three types of instructions in C are :
=> Type Declaration Instruction
=> Arithmetic Instruction
=> Control Instruction
23) What is an expression?
Expression is defined as a combination of operands and operators to obtain some computation. Operands represent variables or values and The operator tells is what operation to be performed.
24) What are the types of data files?
=> There are two types of data files :
=> stream oriented or standard data files
=> system oriented or low level data files
25) Why C is called a middle level language?
C combines the features of both Assembly Level Languages (Low Level Languages) and Higher Level Languages. For this reason, C is referred to as a Middle Level Language. The feature of ALLs is that of enabling us to develop system level programs and the features of HLLs are those of higher degree of readability and machine independence.
26) How can variables be characterized?
The variables can be categorized by storage class as well as by data type. The storage class specifies the portion of the program within which the variables are recognized.
27) Give the rules for variable declaration?
=> The rules for variable declaration in C are given below :
=> A variable name consists of alphabets, digits and the underscore (_) character
=> The length of variable should be kept upto 8 characters though your system may allow upto 40 characters
=> They must begin with an alphabet
=> Some systems also recognize an underscore as the first character
=> White space and commas are not allowed
=> Any reserved word (keyword) cannot be used as a variable name.
28) What is the purpose of type declarations?
The type declaration allow to create a synonym for other data types. Its syntax is typedef type identifier; The declaration typedef unsigned long int INTEGER
29) What is recursion?
C language a function may call another function. When a function calls itself, it is referred to as recursive call and the process is known as recursion. C provides very good facilities for recursion.
30) What is data types?
Data types refer to the classes of data that can be manipulated by C programs. The three fundamental data types supported by C are character, integer and real type.
31) What are the types of macro formats?
=> There are two types of macro formats. There are
=> Simple
=> Parameterized
32) What are the different types of errors?
=> Compile–Time Errors
=> Linker Errors
=> Runtime Errors
=> Logical Errors
33) What is meant by errors and debugging?
Errors may be made during program creation even by experienced programmers. Such type of errors are detected by the compiler.
Debugging means removing the errors..
34) What is the purpose of main() function?
=> The function main() invokes other functions within it.It is the first function to be called when the program starts execution.
=> It is the starting function.
=> It returns an int value to the environment that called the program.
=> Recursive call is allowed for main( ) also.
=> It is a user-defined function.
35) What is meant by type casting?
It is the explicit type conversion required for a number before carrying out processing or assigning to another variable.
36) What are the primitive data types in c?
There are five different kinds of data types in C.
=> Char
=> Int
=> Float
=> Double
=> Void
37) What is the use of typedef?
The typedef help in easier modification when the programs are ported to another machine. A descriptive new name given to the existing data type may be easier to understand the code.
38) What is meant by type specifiers?
Type specifiers decide the amount of memory space occupied by a variable. In the ease of integral types; it also explicitly states the range of values that the object can hold..
39) What are the types of type specifiers?
=> The available data type specifiers are :
=> Short
=> Long
=> Signed
=> Unsigned
40) What is masking?
Masking is a process in which a given bit pattern is partly extracted into another bit pattern by means of a logical bitwise operation.
41) What is the difference between single charater constant and string constant?
=> A single character constant consists of only one character and it is enclosed within a pair of single quotes.
=> A string constant consists of one or more characters and it is enclosed within a pair of double quotes.
42) What is signed and unsigned?
A numeric value, may have a positive or a negative sign. In the memory, for a variable, one bit is used exclusively to maintain the sign of the data. If we don’t have sign, the sign bit also may be used for data. If the value is negative, the sign bit is 1, and if it is positive, it will be 0.
43) What are the different categories of functions in C?
=> In C, the functions can be divided into the following categories :
=> Functions with no arguments and no return values
=> Functions having arguments but no return values
=> Functions having arguments and return values also
44) What is this pointer?
It is a pointer that points to the current object. This can be used to access the members of the current object with the help of the arrow operator
45) What is zero based addressing?
The array subscripts always start at zero. The compiler makes use of subscript values to identify the elements in the array. Since subscripts start at 0, it is said that array uses zerobased addressing.
46) What is a loop?
A loop is a process to do a job repeatedly with possibly different data each time. The statements executed each time constitute the loop body, and each pass is called iteration. A condition must be present to terminate the loop.
47) What are the types of data types and explain?
There are five basic Data types in C. These are :
=> void : means nothing i.e. no data involvement in an action
=> char : to work with all types of characters used in computer operations
=> int : to work with an integer type of data in any computational work
=> float : to work with the real type of data or scientific numbers in the exponential form
=> double : to work with double precision of numbers when the approximation is very crucial.
48) What is friend function?
The function declaration should be preceded by the keyword friend.The function definitions does not use either the keyword or the scope operator ::.
The functions that are declared with the keyword friend as friend function.Thus, a friend function is an ordinary function or a member of another class.
49) What is break statement?
When a break is encountered inside a loop, the loop is terminated and the control passes to the statement following the body of the loop.
50) What is the use of getchar() function?
It returns a character just entered from the standard input unit, that is, keyboard. The entered character can be either assigned to a character variable or echoed to the computer screen.