Skip to content
Related Articles
Open in App
Not now

Related Articles

C Quiz – 102 | Question 4

Improve Article
Save Article
Like Article
  • Difficulty Level : Basic
  • Last Updated : 28 Jun, 2021
Improve Article
Save Article
Like Article

In the context of modulo operation (i.e. remainder on division) for floating point (say 2.1 and 1.1), pick the best statement.

(A) For floating point, modulo operation isn’t defined and that’s why modulo can’t be found.
(B) (2.1 % 1.1) is the result of modulo operation.
(C) fmod(2.1,1.1) is the result of module operation.
(D) ((int)2.1) % ((int)1.1) is the result of modulo operation.


Answer: (C)

Explanation: % works on integer types only not for floating types. Typecasting to integer type might approximate the intended result but it won’t produce the correct result.

Basically the fmod(x,y) function returns the value x − ny, for some integer n such that, if y is nonzero, the result has the same sign as x and magnitude less than the magnitude of y. fmod() is declared in “math.h” and its prototype is “double fmod(double x, double y)“. For float and long double also, modulo has been implemented in math.h library through fmodf() and fmodl().


Quiz of this Question

My Personal Notes arrow_drop_up
Like Article
Save Article
Related Articles

Start Your Coding Journey Now!