C Tutorial — Learn C Programming
Key takeaway: This free C tutorial teaches you systems programming from scratch — variables, pointers, arrays, functions, structs, and memory management — with practical code examples you can compile and run.
C is a general-purpose, procedural programming language created in 1972. It is used for operating systems, embedded systems, game engines, and performance-critical applications. This tutorial is for beginners, CS students, and developers who want to understand how computers work at a low level.
Last updated: September 2026
if...else Statement in C
The if...else statement is used to execute different blocks of code based on certain conditions. It allows your program to make decisions.
Basic if Statement
#include <stdio.h>
int main() {
int age;
printf("Enter your age: ");
scanf("%d", &age);
if (age >= 18) {
printf("You are eligible to vote!\n");
}
return 0;
}if...else Statement
#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);
}
return 0;
}if...else if...else Statement
#include <stdio.h>
int main() {
int marks;
printf("Enter your marks: ");
scanf("%d", &marks);
if (marks >= 90) {
printf("Grade: A+\n");
} else if (marks >= 80) {
printf("Grade: A\n");
} else if (marks >= 70) {
printf("Grade: B\n");
} else if (marks >= 60) {
printf("Grade: C\n");
} else {
printf("Grade: F\n");
}
return 0;
}Nested if Statements
#include <stdio.h>
int main() {
int age;
char license;
printf("Enter your age: ");
scanf("%d", &age);
if (age >= 18) {
printf("Do you have a driving license? (y/n): ");
scanf(" %c", &license);
if (license == 'y' || license == 'Y') {
printf("You can drive!\n");
} else {
printf("You need a driving license.\n");
}
} else {
printf("You are too young to drive.\n");
}
return 0;
}Explanation
- if / else: Executes code based on boolean conditions; non-zero is true, zero is false.
- Chained else if: Useful for mutually exclusive ranges or categories (e.g., grading logic).
- Nested if: Use judiciously; deep nesting reduces readability—consider early returns or switch.
- Common pitfalls: Using
=instead of==, forgetting braces, or mismatched conditions.
Keywords
Quick Tips
- Use braces even for single statements to avoid errors during future edits.
- Extract repeated logic into functions to keep condition blocks concise.
- Prefer
switchfor many exact-value comparisons on integers or chars.