Warning: implode(): Invalid arguments passed in /www/wwwroot/jobquiz.info/mdiscuss.php on line 336 What will be the output of the program? #include<stdio.h> void fun(int, int); int main() { int i=5, j=2; fun(&i, &j); printf("%d, %d", i, j); return 0; } void fun(int i, int j) { i = ii; j = jj; } ?->(Show Answer!)
1. What will be the output of the program? #include<stdio.h> void fun(int, int); int main() { int i=5, j=2; fun(&i, &j); printf("%d, %d", i, j); return 0; } void fun(int i, int j) { i = ii; j = jj; }
Ask Your Doubts Here
Comments
By: guest on 01 Jun 2017 06.01 pm
Step 1: int i=5, j=2; Here variable i and j are declared as an integer type and initialized to 5 and 2 respectively. Step 2: fun(&i, &j); Here the function fun() is called with two parameters &i and &j (The & denotes call by reference. So the address of the variable i and j are passed. ) Step 3: void fun(int *i, int *j) This function is called by reference, so we have to use * before the parameters. Step 4: *i = *i**i; Here *i denotes the value of the variable i. We are multiplying 5*5 and storing the result 25 in same variable i. Step 5: *j = *j**j; Here *j denotes the value of the variable j. We are multiplying 2*2 and storing the result 4 in same variable j. Step 6: Then the function void fun(int *i, int *j) return back the control back to main() function. Step 7: printf("%d, %d", i, j); It prints the value of variable i and j. Hence the output is 25, 4.