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
What is a void pointer? When is a void pointer used?
How arrays can be passed to a user defined function
What is the best way to comment out a section of code that contains comments?
What are the types of type specifiers?
What does static variable mean in c?
a single linked list consists of nodes a to z .print the nodes in reverse order from z to a using recursion
Write a program to print numbers from 1 to 100 without using loop in c?
Where are some collections of useful code fragments and examples?
What is volatile variable how do you declare it?
What is merge sort in c?
What is c basic?
What is ambagious result in C? explain with an example.
Why #include is used in c language?
what is the role you expect in software industry?
What Is The Difference Between Null And Void Pointer?