void printInt(int n){
if(n==1)
cout<<1<<" ";
else
printInt(n-1);
cout<<n<<" ";
}
la sortie que je reçois est« print 1 à n » 1 deux fois
1 1 2 3....n
J'écris les étapes réelles de la fonction sur un morceau de papier, mais je ne suis pas comment il imprime un 1 supplémentaire dans la console (Visual Studio 2010). Cela vient des solutions matérielles passées, donc c'est strictement pour comprendre comment cela fonctionne.
Vous pouvez utiliser 'printInt (-N-)' au lieu de 'printInt (n - 1)' – olevegard
@olevegard Cela ne fonctionnera pas comme prévu, donc je ne pense pas que ce soit un très bon changement. –
Vous devriez apprendre à utiliser un débogueur. –