Bird
Raised Fist0
Cprogramming~15 mins

Else–if ladder in C - Mini Project: Build & Apply

Choose your learning style10 modes available
Else-if ladder
📖 Scenario: You are creating a simple program that categorizes a person's age group based on their age.
🎯 Goal: Build a program that uses an else-if ladder to print the correct age group for a given age.
📋 What You'll Learn
Create an integer variable called age with the value 25
Create an else-if ladder to check the age and assign the correct age group
Use these age groups: Child (0-12), Teen (13-19), Adult (20-59), Senior (60 and above)
Print the age group using printf
💡 Why This Matters
🌍 Real World
Programs often need to make decisions based on ranges, like categorizing ages, prices, or scores.
💼 Career
Understanding <code>else-if</code> ladders is essential for writing clear decision-making code in many software jobs.
Progress0 / 4 steps
1
Create the age variable
Create an integer variable called age and set it to 25.
C
Hint

Use int age = 25; inside the main function.

2
Set up the else-if ladder
Add an else-if ladder to check the value of age for these groups: age <= 12, age <= 19, age <= 59, and else for 60 and above.
C
Hint

Use if, else if, and else to check the age ranges.

3
Add printf statements for each age group
Inside each block of the else-if ladder, add a printf statement to print the correct age group: "Child", "Teen", "Adult", or "Senior".
C
Hint

Use printf inside each condition to print the age group.

4
Print the age group
Run the program and print the age group for age = 25 using printf. The output should be Adult.
C
Hint

Run the program and check the output is Adult.

Practice

(1/5)
1. What does an else-if ladder do in C programming?
easy
A. Checks multiple conditions one by one and executes the first true block
B. Runs all conditions regardless of their truth value
C. Only executes the last condition in the ladder
D. Skips all conditions and runs the else block always

Solution

  1. Step 1: Understand the purpose of else-if ladder

    An else-if ladder is used to check multiple conditions sequentially.
  2. Step 2: Identify how conditions are executed

    Only the first condition that is true will have its block executed, and the rest are skipped.
  3. Final Answer:

    Checks multiple conditions one by one and executes the first true block -> Option A
  4. Quick Check:

    Else-if ladder = first true condition runs [OK]
Hint: Remember: else-if stops at first true condition [OK]
Common Mistakes:
  • Thinking all conditions run regardless
  • Believing else runs always
  • Confusing else-if with multiple ifs
2. Which of the following is the correct syntax for an else-if ladder in C?
easy
A. if(condition) { } else(condition) { } else if { }
B. if(condition) { } else if(condition) { } else { }
C. if(condition) { } else if { } else(condition) { }
D. if(condition) { } else if(condition) { } else if

Solution

  1. Step 1: Review correct else-if syntax

    The else-if ladder uses: if(condition) { } else if(condition) { } else { }.
  2. Step 2: Check each option for syntax errors

    if(condition) { } else if(condition) { } else { } matches correct syntax; others have misplaced else or missing conditions.
  3. Final Answer:

    if(condition) { } else if(condition) { } else { } -> Option B
  4. Quick Check:

    Correct else-if syntax = if(condition) { } else if(condition) { } else { } [OK]
Hint: else if always needs a condition in parentheses [OK]
Common Mistakes:
  • Writing else with a condition
  • Omitting parentheses in else-if
  • Ending else-if without braces
3. What will be the output of the following C code?
int x = 15;
if (x < 10) {
  printf("Less than 10\n");
} else if (x < 20) {
  printf("Less than 20\n");
} else {
  printf("20 or more\n");
}
medium
A. Less than 20
B. 20 or more
C. Less than 10
D. No output

Solution

  1. Step 1: Evaluate first condition (x < 10)

    x is 15, which is not less than 10, so this block is skipped.
  2. Step 2: Evaluate second condition (x < 20)

    15 is less than 20, so this block runs and prints "Less than 20".
  3. Final Answer:

    Less than 20 -> Option A
  4. Quick Check:

    15 < 20 = true, prints "Less than 20" [OK]
Hint: Check conditions top to bottom, first true runs [OK]
Common Mistakes:
  • Choosing first condition without checking value
  • Assuming else always runs
  • Confusing output strings
4. Find the error in this else-if ladder code snippet:
int num = 5;
if (num > 10)
  printf("Greater than 10\n");
else if num > 0
  printf("Positive number\n");
else
  printf("Zero or negative\n");
medium
A. Missing semicolon after printf statements
B. else cannot be used without if
C. Incorrect variable name used
D. Missing parentheses around condition in else-if

Solution

  1. Step 1: Check syntax of else-if condition

    In C, else-if condition must be inside parentheses: else if (condition).
  2. Step 2: Identify the error in given code

    Code has else if num > 0 without parentheses, causing syntax error.
  3. Final Answer:

    Missing parentheses around condition in else-if -> Option D
  4. Quick Check:

    else-if needs parentheses [OK]
Hint: Always put conditions in parentheses after else if [OK]
Common Mistakes:
  • Forgetting parentheses in else-if
  • Missing semicolons after printf
  • Misusing else without if
5. You want to write a program that prints "Child" if age < 13, "Teen" if age is between 13 and 19 inclusive, "Adult" if age is between 20 and 59 inclusive, and "Senior" if age is 60 or more. Which else-if ladder correctly implements this?
hard
A. if (age < 13) { printf("Child\n"); } else if (age < 20) { printf("Teen\n"); } else if (age < 59) { printf("Adult\n"); } else { printf("Senior\n"); }
B. if (age <= 13) { printf("Child\n"); } else if (age < 19) { printf("Teen\n"); } else if (age < 59) { printf("Adult\n"); } else { printf("Senior\n"); }
C. if (age <= 12) { printf("Child\n"); } else if (age <= 19) { printf("Teen\n"); } else if (age <= 59) { printf("Adult\n"); } else { printf("Senior\n"); }
D. if (age < 13) { printf("Child\n"); } else if (age < 19) { printf("Teen\n"); } else if (age <= 59) { printf("Adult\n"); } else { printf("Senior\n"); }

Solution

  1. Step 1: Analyze age ranges for each category

    Child: age < 13 means age ≤ 12; Teen: 13 to 19 inclusive; Adult: 20 to 59 inclusive; Senior: 60 or more.
  2. Step 2: Check each option's conditions

    if (age <= 12) { printf("Child\n"); } else if (age <= 19) { printf("Teen\n"); } else if (age <= 59) { printf("Adult\n"); } else { printf("Senior\n"); } correctly uses age ≤ 12 for Child, ≤ 19 for Teen, ≤ 59 for Adult, else Senior.
  3. Final Answer:

    if (age <= 12) { printf("Child\n"); } else if (age <= 19) { printf("Teen\n"); } else if (age <= 59) { printf("Adult\n"); } else { printf("Senior\n"); } -> Option C
  4. Quick Check:

    Correct age ranges with inclusive bounds = if (age <= 12) { printf("Child\n"); } else if (age <= 19) { printf("Teen\n"); } else if (age <= 59) { printf("Adult\n"); } else { printf("Senior\n"); } [OK]
Hint: Use inclusive bounds carefully in else-if conditions [OK]
Common Mistakes:
  • Using wrong comparison operators
  • Overlapping or missing age ranges
  • Incorrect boundary values
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard