0
Explain this program step by step
#include <stdio.h> void say_hello(); int main() { int i; for (i = 0; i < 5; i++) { say_hello(); } return 0; } void say_hello() { static int num_calls = 1; printf("Hello number %d\n", num_calls); num_calls++; }
2 Answers
+ 3
A for loop: starts at 0, ends at 4 (i < 5). i++ = i+1 (steps)
Your loop runs 5 times and calls say_hello() --> this a method/function
Whats inside your function?
There is an integer and a print statement.
num_calls = 1
print hello user and the value of num_calls
Then increment num_calls //it is now 2
For loop --> i = 0 --> jump in your method --> jump back in the for loop --> i = 1 --> jump in your method .... and so on until i = 4
You can use the code playground to see the output.
+ 1
I got it the answer is in the function defintion for every loop it prints and increment by 1 and another loop print that value and again incremented by 1 and then used by next loop and so on