Learn C Programming MCQ Questions and Answers on C Arithmetic Operators like Modulo Division Operator, Plus, Minus, Star and Division Operators. Operator Precedence and Priority is also explained. Easily attend Job interviews after reading these Multiple Choice Questions.

Go
through **C Theory Notes on Arithmetic Operators** before studying
questions.

**1) Choose a correct statement. **

**int a
= 12 + 3 * 5 / 4 - 10**

A)
12, 3, 5, 4 and 10 are Operators. +, -, * and / are Operands. = is
an increment operator.

B)
12, 3, 5, 4 and 10 are Operands. +, -, * and / are Operators. = is
decrement operator.

C)
12, 3, 5, 4 and 10 are Operands. +, -, * and / are Operators. = is
an assignment operator.

D)
12, 3, 5, 4 and 10 are Operands. +, -, * and / are Logical
Operators. = is an assignment operator.

Answer
[=]

**C**

**2) Operator % in C Language is called.?**

A)
Percentage Operator

B)
Quotient Operator

C)
Modulus

D)
Division

Answer
[=]

**C**

**Explanation:
**

**Operator
% is called Modulus or Modular or Modulo Division operator in C. It gives the
reminder of the division.**

**int
a = 11%4;**

**Now a holds only 3
which is the reminder.**

**3) Output of an arithmetic expression
with integers and real numbers is ___ by default.?**

A)
Integer

B)
Real number

C)
Depends on the numbers used in the expression.

D)
None of the above

Answer
[=]

**B**

**Explanation:
**

**Any
arithmetic operation with both integers and real numbers yield output as Real
number only.**

**5
+ 10.56 = 15.560000 which is a real number.**

**5 + 10.0 = 15.000000
is also a real number.**

**4) Choose a right statement. **

**int a
= 10 + 4.867;**

A)
a = 10

B)
a = 14.867

C)
a = 14

D)
compiler error.

Answer
[=]

**C**

**Explanation:
**

**a is an int variable.
So 10+4.867 = 14.867 is truncated to 14 and assigned to a.**

**5) Choose a right statement. **

**int a
= 3.5 + 4.5;**

A)
a = 0

B)
a = 7

C)
a = 8

D)
a = 8.0

Answer
[=]

**C**

**Explanation:
**

**3.5 + 4.5 = 8.0 is a
real number. So it is converted to downgraded to int value. So a = 8.**

**6) Choose a right statement. **

**float
var = 3.5 + 4.5;**

A)
var = 8.0

B)
var = 8

C)
var = 7

D)
var = 0.0

Answer
[=]

**A**

**Explanation:
**

**A float variable can
hold a real number.**

**7) Choose right statement. **

**int
main()**

**{**

** float c = 3.5 + 4.5;**

** printf("%f", c);**

** return 0;**

**}**

A)
8.0

B)
8.000000

C)
8

D)
7

Answer
[=]

**B**

**Explanation:
**

**Float
can print precision up to 6 digits. So 6 zeros will be shown if there are no
digits after decimal point.**

**8) Choose a right statement. **

**int
main()**

**{**

** float c = 3.5 + 4.5;**

** printf("%d", (int)c);**

** return 0;**

**}**

A)
8.0

B)
8.000000

C)
7

D)
8

Answer
[=]

**D**

**Explanation:
**

**You
are printing a float variable by type casting to int. So integer is
printed. **

**int c = 3.5 + 4.5 also
holds and prints 8.**

**9) Choose a right statement. **

**int a
= 5/2;**

**int b
= 5.0/2;**

**int c
= 5 / 2.0;**

**int d
= 5.0/2.0;**

A)
a = 2, b = 2, c = 2, d= 2

B)
a = 2, b = 2.0, c = 2, d= 2.0

C)
a = 2, b = 2.5, c = 2.5, d= 2.5

D)
a = 2.5, b = 2.5, c = 2.5, d= 2.5

Answer
[=]

**A**

**Explanation:
**

**Irrespective of
numbers after decimal point, an int variable holds only integer value i.e 2.**

**10) Choose a right statement. **

**float
a = 5/2;**

**float
b = 5/2.0;**

**float
c = 5.0/2;**

**float
d = 5.0/2.0;**

A)
a=2.5, b=2.5, c=2.5, d=2.5

B)
a=2, b=2.5, c=2.5, d=2.5

C)
a=2.0, b=2.5, c=2.5, d=2.5

D)
a=2.0, b=2.0, c=2.0, d=2.0

Answer
[=]

**C**

**Explanation:
**

**In
division, to get the actual real value, you should specify at least one real
number.**

**Variable a holds only
2. But variables b,c and d contain real numbers as either numerator or
denominator is a real number.**

**11) If both numerator and denominator of
a division operation in C language are integers, then we get.?**

A)
Expected algebraic real value

B)
Unexpected integer value

C)
Compiler error.

D)
None of the above

Answer
[=]

**B**

**Explanation:
**

**int a = 5/2 stores
only 2.**

**12) Choose a right statement. **

**int
var = 3.5;**

A)
a = 3.5

B)
a = 3

C)
a = 0

D)
Compiler error

Answer
[=]

**B**

**Explanation:
**

**a stores only integer
value. So, 3.5 is truncated to 3.**

**13) Choose a right statement. **

**int
main()**

**{**

** int var = 3.5;;**

** printf("%f", var);**

** return 0;**

**}**

A)
3.500000

B)
3

C)
3.5

D)
0.000000

Answer
[=]

**D**

**Explanation:
**

**As the variable type
is an integer, you have to use %d as a format specifier. If you specify wrong
format specifier, you will not get expected output.**

**14) What is the output of the program.? **

**int
main()**

**{**

** int a = 25%10;**

** printf("%d", a);**

** return 0;**

**}**

A)
2.5

B)
2

C)
5

D)
Compiler error.

Answer
[=]

**C**

**Explanation:
**

**Modulo
division operator returns the reminder of division of 25 by 10. 10x2 + 5 = 25.
So reminder is 5.**

**15) Can you use C Modulo Division
operator % with float and int?**

A)
Only int variables = Okay

B)
Only float variables = Okay

C)
int or float combination = Okay

D)
Numerator int variable, Denominator any variable = Okay

Answer
[=]

**A**

**Explanation:
**

**Modulo Division
operator % in C language can be used only with integer variables or constants.**

**16) What is the output of the C program
with Modulo Division operator with - or Negative numbers.? **

**int
main()**

**{**

** int a = -25%-10;**

** int b = -25%10;**

** int c = 25%-10;**

** **

** printf("%d %d %d", a, b, c);**

** return 0;**

**}**

A)
5 -5 -5

B)
5 -5 5

C)
-5 -5 5

D)
5 5 5

Answer
[=]

**C**

**Explanation:
**

**Sign of a modulo
division operation is same as the sign of Numerator. So sign of 25 is taken
always.**

**17) What is the output of the program.? **

**int
main()**

**{**

** float a = 45;**

** printf("%f", a);**

** return 0;**

**}**

A)
45

B)
45.0

C)
45.000000

D)
0.000000

Answer
[=]

**C**

**Explanation:
**

**Integer value 45 is
promoted to float i.e 45.0 and printed with all 6 decimal numbers.**

**18) What is the priority of operators *,
/ and % in C language.?**

A)
* > / > %

B)
% > * > /

C)
Both % = / , * are same

D)
All three operators *, / and % are same.

Answer
[=]

**D**

**Explanation:
**

**Operators
Multiplication *, Division / and Modulo Division % are all having the same
Priority.**

**19) In C language, which Operator group
has more priority between (*, / and %) and (+, -) groups.?**

A)
Both groups share equal priority.

B)
(+, -) > (*, / and %)

C)
(+, -) < (*, / and %)

D)
None of the above.

Answer
[=]

**C**

**Explanation:
**

**+ and - has same
priority. *, / and % has equal priority. But (+, -) has less priority than (*,
/ and %).**

**20) Associativity of C Operators *, /,
%, +, - and = is.?**

A)
Operators *, / and % have Left to Right Associativity. Operators + and - have
Left to Right Associativity. Operator = has Right to Left Associativitiy.

B)
Operators *, / and % have Right to Left Associativity. Operators + and - have
Left to Right Associativity. Operator = has Right to Left Associativitiy.

C)
Operators *, / and % have Right to Left Associativity. Operators + and - have
Right to Left Associativity. Operator = has Right to Left Associativitiy.

D)
Operators *, / and % have Right to Left Associativity. Operators + and - have
Right to Left Associativity. Operator = has Left to Right Associativitiy.

Answer
[=]

**A**

**Explanation:
**

**Operators *, / and %
have Left to Right Associativity. Operators + and - have Left to Right
Associativity. Operator = has Right to Left Associativitiy.**

## 0 Comments