What does this code print?void print(int nb){ printf("%d", nb); -- nb; if (nb > 0) { print(nb); }}int main(void){ print(4); return (0);}
Question
What does this code print?void print(int nb){ printf("%d", nb); -- nb; if (nb > 0) { print(nb); }}int main(void){ print(4); return (0);}
Solution
This code will print "4321".
Here's the step-by-step explanation:
- The
mainfunction calls theprintfunction with the argument4. - The
printfunction prints the number4and then decrements it by1. - Since the number
3is greater than0, theprintfunction is called again with the argument3. - This process repeats until the number
1is printed and decremented to0. - Since
0is not greater than0, theprintfunction is not called again and the program ends.
So, the output of the program is the string "4321".
Similar Questions
What does this code print?* print_something - function to print something** Return: Always 0**/int print_something(int num){ int i, j; for (i = 0; i < num + 1; i++) { for (j = 0; j < num + 1; j++) { printf("%d", i * j); if (j < num) { printf(", "); } } printf("\n"); } return (0);}
What does the following program print?#include <stdio.h>int main() { for (int i = 1; i < 10; i++) { if (i % 2 == 0) continue; printf("%d ", i); } return 0;}
What does the following program print?void f(int *p, int *q) { p = q; *p = 2;}int i = 0, j = 1;int main() { f(&i, &j); printf("%d %d \n", i, j); getchar(); return 0;}Options2 22 10 10 2
What will be the output of the following code snippet?123456#include <stdio.h>int main() { int a = 4, b = 7; printf("%d", a & b); return 0;}
What is the output of the following code snippet?#include<stdio.h>int main(){ int i = 5; int a = --i + --i; printf("%d",a); return 0;}a.8b.6c.5d.7
Upgrade your grade with Knowee
Get personalized homework help. Review tough concepts in more detail, or go deeper into your topic by exploring other relevant questions.