Dus ik had vandaag examen C en ik moest zeggen wat deze recursie functie teruggaf:
En dat kwam uit op 1 2 1 3 1 2 1
Maar ik kan niet goed begrijpen wat er zich op de stack afspeelt. Ik heb heel veel gezocht en het zelf proberen begrijpen, maar ik breek mijn kop er echt over!
Ik weet dat tweakers geen online leerkracht is, maar als iemand mij zou kunnen vertellen waarom dit gebeurt en wat er zich op de stack afspeelt bent u hartelijk bedankt!
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| #include <stdio.h> #include <stdlib.h> void recurse(int n){ if(n==0){ return; } recurse(n-1); printf("\n recurse %d ", n); recurse(n-1); } int main(int argc, char**argv) { recurse(3); return 0; } |
En dat kwam uit op 1 2 1 3 1 2 1
Maar ik kan niet goed begrijpen wat er zich op de stack afspeelt. Ik heb heel veel gezocht en het zelf proberen begrijpen, maar ik breek mijn kop er echt over!
Ik weet dat tweakers geen online leerkracht is, maar als iemand mij zou kunnen vertellen waarom dit gebeurt en wat er zich op de stack afspeelt bent u hartelijk bedankt!
[ Voor 14% gewijzigd door Verwijderd op 31-05-2012 19:31 ]