main()
{
float a=8.8;
double b=8.8;
if(a==b)
printf("Equal");
else
printf("not equal");
getch();
}
what is the output?
with reason
Answer Posted / sandy0103
I am NOT sure, if it is something to do with the compiler,
rather it is something to do with the precision. Float has
got single precision and double is double precision. This
precision difference will get different value when you see
raw value. In another sense, I tried debugging the program
in VS2005 debugger, and if we monitor the value using
watch, you can see for float it is taking the value
as "8.8000002" and for double, it is taking value as "
8.8000000000000007". And hence the precision plays a role
here.
| Is This Answer Correct ? | 0 Yes | 0 No |
Post New Answer View All Answers
Write a program to reverse a linked list in c.
The process of repeatedly running a set of computer instructions until some condition is specifed a) condition b) sequential condition c) global d) iteration
What does %p mean?
Create a structure to specify data on students given below: Roll number, Name, Department, Course, Year of joining Assume that there are not more than 450 students in the college. 1.write a function to print names of all students who joined in a particular year 2.write a function to print the data of a student whose roll number is given
Write the syntax and purpose of a switch statement in C.
Write a code to generate divisors of an integer?
Why malloc is faster than calloc?
What is local and global variable in c?
What is the difference between malloc calloc and realloc in c?
What is the value of c?
What is %s and %d in c?
c program to compute AREA under integral
What is an expression?
When we use void main and int main?
How do I create a directory? How do I remove a directory (and its contents)?