We want to round off x, a float, to an int value, The correct way to do is
A:
y = (int)(x + 0.5)
B:
y = int(x + 0.5)
C:
y = (int)x + 0.5
D:
y = (int)((int)x + 0.5)
Answer:A
Rounding off a value means replacing it by a nearest value that is approximately equal or smaller or greater to the given number.
y = (int)(x + 0.5); here x is any float value. To roundoff, we have to typecast the value of x by using (int)
Example:
#include <stdio.h>
int main ()
{
float x = 3.6;
int y = (int)(x + 0.5);
printf ("Result = %d\n", y );
return 0;
}
Output:
Result = 4.
Discuss About this Question.
Which statement will you add in the following program to work it correctly?
#include<stdio.h>
int main()
{
printf("%f\n", log(36.0));
return 0;
}
A:
#include<conio.h>
B:
#include<math.h>
C:
#include<stdlib.h>
D:
#include<dos.h>
Answer:B
math.h is a header file in the standard library of C programming language designed for basic mathematical operations.
Declaration syntax: double log(double);
Discuss About this Question.
Which of the following range is a valid long double (Turbo C in 16 bit DOS OS) ?
A:
3.4E-4932 to 1.1E+4932
B:
3.4E-4932 to 3.4E+4932
C:
1.1E-4932 to 1.1E+4932
D:
1.7E-4932 to 1.7E+4932
Answer:A
The range of long double is 3.4E-4932 to 1.1E+4932
Discuss About this Question.
If the binary eauivalent of 5.375 in normalised form is 0100 0000 1010 1100 0000 0000 0000 0000, what will be the output of the program (on intel machine)?
#include<stdio.h>
#include<math.h>
int main()
{
float a=5.375;
char *p;
int i;
p = (char*)&a;
for(i=0; i<=3; i++)
printf("%02x\n", (unsigned char)p[i]);
return 0;
}
Discuss About this Question.