void singTheSong(int numOfBottles) {
if (numOfBottles == 0) {
printf("There is no more bottles to sing the song now.\n");
} else {
printf("%d bottoles of beer on the wall, %d bottles of beer.\n", numOfBottles, numOfBottles);
int fewerNum = numOfBottles - 1;
singTheSong(fewerNum);
printf("Put a bottle in the recycling, %d empty bottles in the bin.\n", numOfBottles);
}
}
int main(int argc, const char * argv[]) {
singTheSong(10);
return 0;
}
Result:
10 bottoles of beer on the wall, 10 bottles of beer.
9 bottoles of beer on the wall, 9 bottles of beer.
8 bottoles of beer on the wall, 8 bottles of beer.
7 bottoles of beer on the wall, 7 bottles of beer.
6 bottoles of beer on the wall, 6 bottles of beer.
5 bottoles of beer on the wall, 5 bottles of beer.
4 bottoles of beer on the wall, 4 bottles of beer.
3 bottoles of beer on the wall, 3 bottles of beer.
2 bottoles of beer on the wall, 2 bottles of beer.
1 bottoles of beer on the wall, 1 bottles of beer.
There is no more bottles to sing the song now.
Put a bottle in the recycling, 1 empty bottles in the bin.
Put a bottle in the recycling, 2 empty bottles in the bin.
Put a bottle in the recycling, 3 empty bottles in the bin.
Put a bottle in the recycling, 4 empty bottles in the bin.
Put a bottle in the recycling, 5 empty bottles in the bin.
Put a bottle in the recycling, 6 empty bottles in the bin.
Put a bottle in the recycling, 7 empty bottles in the bin.
Put a bottle in the recycling, 8 empty bottles in the bin.
Put a bottle in the recycling, 9 empty bottles in the bin.
Put a bottle in the recycling, 10 empty bottles in the bin.
Program ended with exit code: 0