# C Programming - Declarations and Initializations

## Why C Programming Declarations and Initializations?

In this section you can learn and practice C Programming Questions based on "Declarations and Initializations" and improve your skills in order to face the interview, competitive examination and various entrance test (CAT, GATE, GRE, MAT, Bank Exam, Railway Exam etc.) with full confidence.

## Where can I get C Programming Declarations and Initializations questions and answers with explanation?

IndiaBIX provides you lots of fully solved C Programming (Declarations and Initializations) questions and answers with Explanation. Solved examples with detailed answer description, explanation are given and it would be easy to understand. All students, freshers can download C Programming Declarations and Initializations quiz questions with answers as PDF files and eBooks.

## Where can I get C Programming Declarations and Initializations Interview Questions and Answers (objective type, multiple choice)?

Here you can find objective type C Programming Declarations and Initializations questions and answers for interview and entrance examination. Multiple choice and true or false type questions are also provided.

## How to solve C Programming Declarations and Initializations problems?

You can easily solve all kind of C Programming questions based on Declarations and Initializations by practicing the objective type exercises given below, also get shortcut methods to solve C Programming Declarations and Initializations problems.

### Exercise :: Declarations and Initializations - General Questions

1.

Which of the following statements should be used to obtain a remainder after dividing 3.14 by 2.1 ?

 A. rem = 3.14 % 2.1; B. rem = modf(3.14, 2.1); C. rem = fmod(3.14, 2.1); D. Remainder cannot be obtain in floating point division.

Explanation:

fmod(x,y) - Calculates x modulo y, the remainder of x/y.
This function is the same as the modulus operator. But fmod() performs floating point divisions.

Example:

``````
#include <stdio.h>
#include <math.h>

int main ()
{
printf ("fmod of 3.14/2.1 is %lf\n", fmod (3.14,2.1) );
return 0;
}
``````

Output:
fmod of 3.14/2.1 is 1.040000

2.

What are the types of linkages?

 A. Internal and External B. External, Internal and None C. External and None D. Internal

Explanation:

External Linkage-> means global, non-static variables and functions.
Internal Linkage-> means static variables and functions with file scope.

3.

Which of the following special symbol allowed in a variable name?

 A. * (asterisk) B. | (pipeline) C. - (hyphen) D. _ (underscore)

Explanation:

Variable names in C are made up of letters (upper and lower case) and digits. The underscore character ("_") is also permitted. Names must not begin with a digit.

Examples of valid (but not very descriptive) C variable names:
=> foo
=> Bar
=> BAZ
=> foo_bar
=> _foo42
=> _
=> QuUx

4.

Is there any difference between following declarations?
 1 : extern int fun(); 2 : int fun();

 A. Both are identical B. No difference, except extern int fun(); is probably in another file C. int fun(); is overrided with extern int fun(); D. None of these

Explanation:

extern int fun(); declaration in C is to indicate the existence of a global function and it is defined externally to the current module or in another file.

int fun(); declaration in C is to indicate the existence of a function inside the current module or in the same file.

5.

How would you round off a value from 1.66 to 2.0?

 A. ceil(1.66) B. floor(1.66) C. roundup(1.66) D. roundto(1.66)

Explanation:

``````/* Example for ceil() and floor() functions: */

#include<stdio.h>
#include<math.h>

int main()
{
printf("\n Result : %f" , ceil(1.44) );
printf("\n Result : %f" , ceil(1.66) );

printf("\n Result : %f" , floor(1.44) );
printf("\n Result : %f" , floor(1.66) );

return 0;
}
// Output:
// Result : 2.000000
// Result : 2.000000
// Result : 1.000000
// Result : 1.000000
``````