📖 Scenario: Imagine you are managing a small shop's inventory. You need to keep track of the number of items available. Sometimes you add new items, and sometimes items are sold. You will use increment and decrement operators to update the item count quickly.
🎯 Goal: You will create a simple C program that uses increment (++) and decrement (--) operators to update the number of items in stock and then display the final count.
📋 What You'll Learn
Create an integer variable called items with an initial value.
Create an integer variable called restock to hold the number of new items added.
Use the increment operator ++ to increase the items count.
Use the decrement operator -- to decrease the items count.
Print the final value of items.
💡 Why This Matters
🌍 Real World
Increment and decrement operators are used in many programs to update counters, track quantities, or manage loops efficiently.
💼 Career
Understanding these operators is essential for programming jobs that involve managing data, loops, or real-time updates, such as software development and embedded systems.
Progress0 / 4 steps
1
Create the initial item count
Create an integer variable called items and set it to 10 to represent the starting number of items in stock.
C
Hint
Use int items = 10; inside the main function.
2
Add new items to restock
Create an integer variable called restock and set it to 5 to represent new items added to the stock.
C
Hint
Use int restock = 5; inside the main function after items.
3
Update item count using increment and decrement operators
Use the increment operator ++ to increase items by restock times, and then use the decrement operator -- to decrease items by 3 to represent sold items. Use a for loop with variable i to increment items exactly restock times.
C
Hint
Use two for loops: one to increment itemsrestock times, and one to decrement items 3 times.
4
Print the final item count
Use printf to display the final value of items with the message: "Final items in stock: %d\n".
C
Hint
Use printf("Final items in stock: %d\n", items); to show the result.
Practice
(1/5)
1. What does the ++ operator do in C?
easy
A. Adds 1 to the variable
B. Subtracts 1 from the variable
C. Multiplies the variable by 2
D. Divides the variable by 2
Solution
Step 1: Understand the meaning of ++
The ++ operator increases the value of a variable by 1.
Step 2: Compare with other options
Subtracting, multiplying, or dividing are not what ++ does.
Final Answer:
Adds 1 to the variable -> Option A
Quick Check:
++ means add 1 [OK]
Hint: Remember ++ means add one, -- means subtract one [OK]
Common Mistakes:
Confusing ++ with --
Thinking ++ multiplies
Mixing increment with assignment
2. Which of the following is the correct syntax for prefix decrement of a variable x by 1 in C?
easy
A. x--;
B. x-+;
C. x+-;
D. --x;
Solution
Step 1: Identify prefix decrement syntax
The prefix decrement operator is --x;, which decrements x by 1.
Step 2: Check options carefully
A is postfix x--;, B x-+; and C x+-; invalid syntax, D is correct prefix.
Final Answer:
--x; -> Option D
Quick Check:
Prefix decrement --x; is correct syntax [OK]
Hint: Look for correct -- syntax before or after variable [OK]
Common Mistakes:
Using invalid operators like -+ or +-
Confusing prefix and postfix syntax
Missing semicolon
3. What is the output of this C code?
int x = 5;
printf("%d", x++);
printf(" %d", x);
medium
A. 5 5
B. 5 6
C. 6 6
D. 6 5
Solution
Step 1: Understand postfix increment x++
Postfix means use the current value first, then add 1. So printf("%d", x++) prints 5, then x becomes 6.
Step 2: Print updated value of x
The second printf prints the new value of x, which is 6.
Final Answer:
5 6 -> Option B
Quick Check:
Postfix prints old value, then increments [OK]
Hint: Postfix ++ prints old value, prefix ++ prints new value [OK]
Common Mistakes:
Confusing postfix with prefix
Expecting increment before print
Ignoring space in output
4. Find the error in this code snippet:
int a = 3;
int b = ++a++;
printf("%d", b);
medium
A. Syntax error due to invalid use of increment operators
B. b will be 4
C. b will be 5
D. No error, prints 3
Solution
Step 1: Analyze the expression ++a++
This expression tries to apply prefix and postfix increment operators together on the same variable, which is invalid syntax in C.
Step 2: Understand compiler rules
C does not allow chaining increments like this; it causes a syntax error.
Final Answer:
Syntax error due to invalid use of increment operators -> Option A
Quick Check:
Invalid chaining of ++ operators causes syntax error [OK]
Hint: Don't chain prefix and postfix ++ on same variable [OK]
Common Mistakes:
Thinking it increments twice
Ignoring syntax error
Assuming valid output
5. Consider this code:
int arr[3] = {1, 2, 3};
int i = 0;
int sum = 0;
while (i < 3) {
sum += arr[i++];
}
printf("%d", sum);
What is the output and why?
hard
A. 6 because i increments before accessing each element
B. 5 because i increments before accessing each element
C. 6 because i increments after accessing each element
D. 5 because i increments after accessing each element
Solution
Step 1: Understand postfix increment in arr[i++]
The value of i is used first to access the array element, then i is incremented.
Step 2: Calculate sum step-by-step
Elements accessed: arr[0]=1, arr[1]=2, arr[2]=3; sum = 1+2+3 = 6.
Final Answer:
6 because i increments after accessing each element -> Option C
Quick Check:
Postfix increments after use, sum is 6 [OK]
Hint: Postfix increments after use, so sum all elements correctly [OK]
Common Mistakes:
Confusing prefix and postfix increments
Calculating wrong sum
Assuming i increments before access
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.