📖 Scenario: Imagine you are creating a simple program that decides if a person can enter a club based on their age. The club only allows people who are 18 years old or older.
🎯 Goal: You will build a small C program that uses conditional logic to check a person's age and print whether they can enter the club or not.
📋 What You'll Learn
Create an integer variable called age with the value 20
Create an integer variable called minimum_age with the value 18
Use an if statement to check if age is greater than or equal to minimum_age
Print "Access granted" if the condition is true
Print "Access denied" if the condition is false
💡 Why This Matters
🌍 Real World
Conditional logic is used in many real-world programs to make decisions, like checking user age for access, validating input, or controlling game rules.
💼 Career
Understanding conditional logic is essential for any programming job because it allows software to respond to different situations and user inputs.
Progress0 / 4 steps
1
Create the age variable
Create an integer variable called age and set it to 20.
C
Hint
Use int age = 20; inside the main function.
2
Create the minimum age variable
Create an integer variable called minimum_age and set it to 18.
C
Hint
Use int minimum_age = 18; inside the main function.
3
Add conditional logic to check age
Use an if statement to check if age is greater than or equal to minimum_age. Inside the if, write printf("Access granted\n");. Use else to write printf("Access denied\n");.
C
Hint
Use if (age >= minimum_age) { ... } else { ... } to decide what to print.
4
Print the result
Run the program and print the output. The program should print Access granted because age is 20 and minimum_age is 18.
C
Hint
Run the program to see the message printed.
Practice
(1/5)
1. Why do we use conditional logic like if statements in C programs?
easy
A. To repeat code multiple times
B. To make decisions based on different conditions
C. To store multiple values in one variable
D. To define new data types
Solution
Step 1: Understand the purpose of conditional logic
Conditional logic allows a program to choose different actions depending on conditions.
Step 2: Compare with other options
Repeating code is done with loops, storing values uses arrays or variables, and defining types uses structs or typedefs.
Final Answer:
To make decisions based on different conditions -> Option B
Quick Check:
Conditional logic = decision making [OK]
Hint: If you want choices, use if-else [OK]
Common Mistakes:
Confusing loops with conditionals
Thinking variables store multiple values
Mixing data types with logic
2. Which of the following is the correct syntax for an if statement in C?
easy
A. if (condition) { /* code */ }
B. if condition { /* code */ }
C. if condition then { /* code */ }
D. if [condition] { /* code */ }
Solution
Step 1: Recall C syntax for if statements
In C, conditions must be inside parentheses and code inside braces.
Step 2: Check each option
if (condition) { /* code */ } matches the correct syntax: if (condition) { /* code */ }.
Final Answer:
if (condition) { /* code */ } -> Option A
Quick Check:
Parentheses around condition = correct syntax [OK]
Hint: Remember: if (condition) { } in C [OK]
Common Mistakes:
Omitting parentheses around condition
Using square brackets instead of parentheses
Adding 'then' keyword which C does not use
3. What will be the output of this C code?
int x = 10;
if (x > 5) {
printf("Big\n");
} else {
printf("Small\n");
}
medium
A. Compilation error
B. Small
C. No output
D. Big
Solution
Step 1: Evaluate the condition
The variable x is 10, which is greater than 5, so the condition (x > 5) is true.
Step 2: Determine which branch runs
Since the condition is true, the code inside the if block runs, printing "Big".
Final Answer:
Big -> Option D
Quick Check:
10 > 5 is true, so prints Big [OK]
Hint: Check condition true or false to pick output [OK]
Common Mistakes:
Confusing which block runs on true
Ignoring the newline character
Thinking else block runs when condition is true
4. Find the error in this C code snippet:
int num = 7;
if num > 5 {
printf("Yes\n");
} else {
printf("No\n");
}
medium
A. Missing parentheses around the condition
B. Missing semicolon after if statement
C. Incorrect use of else keyword
D. Variable num not declared
Solution
Step 1: Check the if statement syntax
The condition in an if statement must be inside parentheses in C.
Step 2: Identify the error
The code uses if num > 5 { ... } without parentheses, which is invalid syntax.
Final Answer:
Missing parentheses around the condition -> Option A
Quick Check:
If condition needs ( ) in C [OK]
Hint: Always put condition inside ( ) for if [OK]
Common Mistakes:
Forgetting parentheses in if condition
Adding semicolon after if line incorrectly
Misplacing braces
5. You want to write a program that prints "Even" if a number is divisible by 2, and "Odd" otherwise. Which code snippet correctly uses conditional logic to do this?
hard
A. if (num % 2 != 0) {
printf("Even\n");
} else {
printf("Odd\n");
}
B. if (num / 2 == 0) {
printf("Even\n");
} else {
printf("Odd\n");
}
C. if (num % 2 == 0) {
printf("Even\n");
} else {
printf("Odd\n");
}
D. if (num % 2 = 0) {
printf("Even\n");
} else {
printf("Odd\n");
}
Solution
Step 1: Understand the condition for even numbers
A number is even if dividing by 2 leaves remainder 0, checked by num % 2 == 0.
Step 2: Check each option's condition
if (num % 2 == 0) {
printf("Even\n");
} else {
printf("Odd\n");
} correctly uses num % 2 == 0. if (num / 2 == 0) {
printf("Even\n");
} else {
printf("Odd\n");
} uses division instead of modulo. if (num % 2 = 0) {
printf("Even\n");
} else {
printf("Odd\n");
} uses assignment (=) instead of comparison (==). if (num % 2 != 0) {
printf("Even\n");
} else {
printf("Odd\n");
} reverses the logic.
Final Answer:
if (num % 2 == 0) { printf("Even\n"); } else { printf("Odd\n"); } -> Option C
Quick Check:
Modulo 2 equals 0 means even [OK]
Hint: Use modulo (%) to check divisibility [OK]
Common Mistakes:
Using = instead of == in condition
Using division instead of modulo
Reversing if-else logic
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.