FIND THE OUTPUT IF THE INPUT IS 5 5.75
void main()
{
int i=1;
float f=2.25;
scanf("%d%f",&i,&f);
printf("%d %f",,i,f);
}
ANSWER IS 5 AND 2.25 WHY?
Answers were Sorted based on User's Feedback
Answer / hari.11
hey,
if we give input as 5 5.75
output would be: 5 5.750000
for further queries and discussions, visit..
http://forum.campusmaniac.com/
http://www.campusmaniac.com/
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / suman halder
There is a tiny mistake in the question..It should be..
FIND THE OUTPUT IF THE INPUT IS 5 5.75
void main()
{
int i=1;
float f=2.25;
scanf("%d %d",&i,&f);
printf("%d %f",,i,f);
}
ANSWER IS 5 AND 2.25 WHY?
The answer of this question actually lies within the question itself..
if we look at the scanf statement ,then the actual reason of the output will be revealed..
In scanf,we are trying to get the input into a floating point number through %d format specifier which is the format specifier for integers..here,lies the anomaly..
nothing actually get stored within f through scanf ,so the previous value of f is retained..and that gets printed..
thats it..
*** if we try the reverse of it.i.e using %f,we wanna get the value into an integer..the compiler may report some error like "floating point format not linked"...we can abstain the error by intoducing a linkfloat function but still there will be some anomaly in the value that get stored in the variable ..so,to get the expected output we need to specify the correct format specifier....dnt trust printf or scanf to perform the proper typecasting for u..
do it explicitly..
linkfloat()
{
float a,*b;
b=&a;
a=*b;
}
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / reshma pawar
there is error in
printf("%d %f",,i,f);
because 2 (,) operators are used
an if operator is removed then output will be
5 5.750000
| Is This Answer Correct ? | 0 Yes | 0 No |
What functions are used for dynamic memory allocation in c language?
Explain how can I right-justify a string?
main() { int *ptr=(int*)malloc(sizeof(int)); *ptr=4; printf("%d",(*ptr)+++*ptr++); }
please give me answer with details #include<stdio.h> main() { int i=1; i=(++i)*(++i)*(++i); printf("%d",i); getch(); }
What is file in c language?
Given only putchar (no sprintf, itoa, etc.) write a routine putlong that prints out an unsigned long in decimal. [ I gave the obvious solution of taking % 10 and / 10, which gives us the decimal value in reverse order. This requires an array since we need to print it out in the correct order. The interviewer wasn't too pleased and asked me to give a solution which didn't need the array ].
What is an object?
Explain that why C is procedural?
What is multidimensional arrays
how many keywords are available in 'c' language a) 32 b) 34 c) 45 d) 48
Are local variables initialized to zero by default in c?
Difference Between embedded software and soft ware?