Home / C Programming / Functions :: Discussion

Discussion :: Functions

  1. What will be the output of the program?

    #include 
     int main()
     {
         int fun(int);    
         int i = fun(10); 
         printf("%d\n", --i);  
         return 0; 
    }
    int fun(int i) 
    {   
        return (i++); 
    } 

     

  2. A.

    9

    B.

    10

    C.

    11

    D.

    8

    View Answer

    Workspace

    Answer : Option A

    Explanation :

    Step 1: int fun(int); Here we declare the prototype of the function fun().

    Step 2: int i = fun(10); The variable i is declared as an integer type and the result of the fun(10) will be stored in the variable i.

    Step 3: int fun(int i){ return (i++); } Inside the fun() we are returning a value return(i++). It returns 10. because i++ is the post-increement operator.

    Step 4: Then the control back to the main function and the value 10 is assigned to variable i.

    Step 5: printf("%d\n", --i); Here --i denoted pre-increement. Hence it prints the value 9.


Be The First To Comment