This program asks the user to enter a number. It then checks if the number is even or odd using the if-else statement and prints the result.
C
#include <stdio.h>
int main() {
int number;
printf("Enter a number: ");
scanf("%d", &number);
if (number % 2 == 0) {
printf("%d is even.\n", number);
} else {
printf("%d is odd.\n", number);
}
return0;
}
OutputSuccess
Important Notes
Always use curly braces { } even if you have only one line inside if or else. It helps avoid mistakes.
The condition inside if must be something that can be true or false, like comparisons.
Summary
If-else lets your program choose between two paths.
Use it when you want to do one thing if a condition is true, and another if it is false.
Remember to write clear conditions and use braces for readability.
Practice
(1/5)
1. What does an if-else statement do in C?
easy
A. It declares a variable.
B. It repeats a block of code multiple times.
C. It defines a new function.
D. It chooses between two actions based on a condition.
Solution
Step 1: Understand the purpose of if-else
An if-else statement lets the program pick one of two paths depending on whether a condition is true or false.
Step 2: Match the description to the options
Only It chooses between two actions based on a condition. describes choosing between two actions based on a condition, which is exactly what if-else does.
Final Answer:
It chooses between two actions based on a condition. -> Option D
Quick Check:
If-else = choose between two paths [OK]
Hint: If you want two choices, use if-else [OK]
Common Mistakes:
Confusing if-else with loops
Thinking if-else declares variables
Mixing if-else with function definitions
2. Which of the following is the correct syntax for an if-else statement in C?
easy
A. if (condition) then { /* code */ } else { /* code */ }
B. if condition then { /* code */ } else { /* code */ }
C. if (condition) { /* code */ } else { /* code */ }
D. if condition { /* code */ } else { /* code */ }
Solution
Step 1: Recall C syntax rules for if-else
In C, conditions must be inside parentheses and braces {} are used for code blocks.
Step 2: Check each option
Only if (condition) { /* code */ } else { /* code */ } uses parentheses around the condition and braces correctly without extra keywords like 'then'.
Final Answer:
if (condition) { /* code */ } else { /* code */ } -> Option C
Quick Check:
Correct syntax uses parentheses and braces [OK]
Hint: Remember: if(condition) with braces {} [OK]
Common Mistakes:
Omitting parentheses around condition
Using 'then' keyword (not in C)
Skipping braces for multiple statements
3. What will be the output of this C code?
#include
int main() {
int x = 10;
if (x > 5) {
printf("Greater\n");
} else {
printf("Smaller\n");
}
return 0;
}
medium
A. Greater
B. Smaller
C. 10
D. No output
Solution
Step 1: Evaluate the condition x > 5
Variable x is 10, which is greater than 5, so the condition is true.
Step 2: Determine which block runs
Since the condition is true, the code inside the if block runs, printing "Greater".
Final Answer:
Greater -> Option A
Quick Check:
10 > 5 is true, so prints "Greater" [OK]
Hint: Check if condition is true or false to pick output [OK]
Common Mistakes:
Confusing which block runs on true condition
Ignoring the newline character in printf
Assuming else block runs when condition is true
4. Find the error in this if-else code snippet:
int a = 3;
if a > 0
printf("Positive\n");
else
printf("Non-positive\n");
medium
A. Missing semicolon after if statement
B. Missing parentheses around condition in if statement
C. Missing braces around printf statements
D. Incorrect else keyword
Solution
Step 1: Check syntax of if condition
In C, the condition in an if statement must be inside parentheses (). Here, it is missing.
Step 2: Verify other parts
Semicolons after printf are present, braces are optional for single statements, and else keyword is correct.
Final Answer:
Missing parentheses around condition in if statement -> Option B
Quick Check:
if condition needs parentheses ( ) [OK]
Hint: Always put condition inside parentheses ( ) [OK]
Common Mistakes:
Forgetting parentheses in if condition
Thinking braces are always required for single statements
Misplacing else keyword
5. You want to write a program that prints "Even" if a number is even, and "Odd" if it is odd. Which if-else code correctly does this in C?
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 how to check even numbers
A number is even if dividing by 2 leaves remainder 0, which is checked by num % 2 == 0.
Step 2: Analyze each option
if (num % 2 == 0) { printf("Even\n"); } else { printf("Odd\n"); } correctly uses modulus operator and equality check. if (num / 2 == 0) { printf("Even\n"); } else { printf("Odd\n"); } uses division instead of modulus. 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 A
Quick Check:
Use modulus == 0 to check even [OK]
Hint: Use num % 2 == 0 to test even numbers [OK]
Common Mistakes:
Using division instead of modulus
Using = instead of == in condition
Reversing even and odd logic
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.