DEV Community

AllCoderThings
AllCoderThings

Posted on

C# Conditional Statements (if, else, switch)

Originally published at https://allcoderthings.com/en/article/csharp-decision-structures-if-else-switch

In programming, you often need to perform different actions depending on conditions. In C#, such cases are handled with decision structures. The most common ones are if, else if, else, and switch.

if Statement

The if statement executes a block when the condition is true.

int number = 10;

if (number > 5)
{
    Console.WriteLine("Number is greater than 5.");
}
Enter fullscreen mode Exit fullscreen mode

if - else Statement

Use else to run an alternative block when the condition is false.

Console.Write("Enter your grade: ");
int grade = int.Parse(Console.ReadLine()); // convert from string to int

if (grade >= 50)
{
    Console.WriteLine("You passed.");
}
else
{
    Console.WriteLine("You failed.");
}
Enter fullscreen mode Exit fullscreen mode

if - else if - else

Check multiple conditions in sequence using else if.

int grade = 75;

if (grade >= 90)
{
    Console.WriteLine("Grade: A");
}
else if (grade >= 70)
{
    Console.WriteLine("Grade: B");
}
else if (grade >= 50)
{
    Console.WriteLine("Grade: C");
}
else
{
    Console.WriteLine("Failed");
}
Enter fullscreen mode Exit fullscreen mode

switch Statement

Use switch to branch execution based on fixed values. It is more readable than many else if blocks.

Console.Write("Enter day number (1-7): ");
int day = int.Parse(Console.ReadLine());

switch (day)
{
    case 1: Console.WriteLine("Monday"); break;
    case 2: Console.WriteLine("Tuesday"); break;
    case 3: Console.WriteLine("Wednesday"); break;
    case 4: Console.WriteLine("Thursday"); break;
    case 5: Console.WriteLine("Friday"); break;
    case 6: Console.WriteLine("Saturday"); break;
    case 7: Console.WriteLine("Sunday"); break;
    default: Console.WriteLine("Invalid day!"); break;
}
Enter fullscreen mode Exit fullscreen mode

User Input with Decision Structures

Decision structures often rely on user input.

Console.Write("Enter a number: ");
int number = int.Parse(Console.ReadLine());

if (number % 2 == 0)
{
    Console.WriteLine("The number is even.");
}
else
{
    Console.WriteLine("The number is odd.");
}
Enter fullscreen mode Exit fullscreen mode

Summary

  • if: Runs when condition is true.
  • else: Runs when condition is false.
  • else if: Checks multiple conditions sequentially.
  • switch: Branches on fixed values.

Menu Example: Using if, else if, else and switch

In this example, a simple console-based menu system is created. The user makes a choice, which is validated with the if / else if / else structure, and the switch statement executes the selected mathematical operation. This demonstrates how conditional and selection structures can be combined.

using System;

class Program
{
    static void Main()
    {
        Console.WriteLine("=== Menu ===");
        Console.WriteLine("1 - Addition");
        Console.WriteLine("2 - Subtraction");
        Console.WriteLine("3 - Multiplication");
        Console.WriteLine("4 - Division");
        Console.WriteLine("0 - Exit");
        Console.Write("Enter your choice: ");

        int choice = int.Parse(Console.ReadLine()); // convert from string to int

        if (choice == 0)
        {
            Console.WriteLine("Exiting program...");
        }
        else if (choice >= 1 && choice <= 4)
        {
            Console.Write("Enter the first number: ");
            double num1 = double.Parse(Console.ReadLine());

            Console.Write("Enter the second number: ");
            double num2 = double.Parse(Console.ReadLine());

            switch (choice)
            {
                case 1:
                    Console.WriteLine($"Result: {num1 + num2}");
                    break;
                case 2:
                    Console.WriteLine($"Result: {num1 - num2}");
                    break;
                case 3:
                    Console.WriteLine($"Result: {num1 * num2}");
                    break;
                case 4:
                    if (num2 != 0)
                        Console.WriteLine($"Result: {num1 / num2}");
                    else
                        Console.WriteLine("Error: Division by zero is not allowed!");
                    break;
            }
        }
        else
        {
            Console.WriteLine("Invalid choice.");
        }
    }
}
Enter fullscreen mode Exit fullscreen mode

Top comments (0)