C Programming - Input / Output - Discussion

Discussion Forum : Input / Output - Find Output of Program (Q.No. 13)
13.
What will be the output of the program if value 25 given to scanf()?
#include<stdio.h>

int main()
{
    int i;
    printf("%d\n", scanf("%d", &i));
    return 0;
}
25
2
1
5
Answer: Option
Explanation:

The scanf function returns the number of input is given.

printf("%d\n", scanf("%d", &i)); The scanf function returns the value 1(one).

Therefore, the output of the program is '1'.

Discussion:
23 comments Page 2 of 3.

Rakesh said:   1 decade ago
As scanf returns total number of input is given to it.

Try again it will return 1, as number of input is 1. Try also this,

int i;
i = printf ("rakesh") ;
printf("%d", i);

Output will be "rakesh6".

Venkatreddy said:   1 decade ago
I didn't understand why it returns 1. Although scanf reads 25?

Lavanya said:   1 decade ago
Why the o/p is -1 if we compile it?

Randy said:   1 decade ago
If you compile the code. Why the result is -1? :).

Amit said:   1 decade ago
Thanks Sundar.............

Ranjana said:   1 decade ago
The scanf() function returns that how many inputs are given by the as we see here one input is given so answer is 1.

Rockstar said:   1 decade ago
Thanks ritu it really hlped.

Satyam said:   1 decade ago
If we don't write the statement return than what will be the output?

Amarjit said:   1 decade ago
Excellent answer.

Rakesh said:   1 decade ago
I'm still confused. As 25 is given as input. Why it returns 1? explain.


Post your comments here:

Your comments will be displayed after verification.