Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Язык C

C# if, if...else, if...else if и вложенный оператор if

C# if, if...else, if...else if и вложенный оператор if

В этой статье мы узнаем, как использовать оператор if, if...else, if...else if в C# для управления потоком выполнения нашей программы.

Проверка условия неизбежна в программировании. Мы часто будем сталкиваться с ситуациями, когда нам нужно проверить условия (будь то true или false ) для управления потоком программы. На эти условия могут влиять действия пользователя, фактор времени, текущая среда, в которой работает программа, и т. д.

В этой статье мы научимся проверять условия с помощью оператора if в C#.

<час>

Выражение C# if (if-then)

Оператор C# if-then выполнит блок кода, если заданное условие истинно. Синтаксис оператора if-then в C#:

if (boolean-expression)
{
	// statements executed if boolean-expression is true
}

Например,

if (number < 5)
{
	number += 5;
}

В этом примере оператор

number += 5;

будет выполняться, только если значение числа меньше 5.

Помните оператор +=?

Как работает оператор if?

<рисунок>

Пример 1. Оператор C# if

using System;

namespace Conditional
{
	class IfStatement
	{
		public static void Main(string[] args)
		{
			int number = 2;
			if (number < 5)
			{
				Console.WriteLine("{0} is less than 5", number);
			}

			Console.WriteLine("This statement is always executed.");
		}
	}
}

Когда мы запустим программу, вывод будет таким:

2 is less than 5
This statement is always executed.

Значение число инициализируется значением 2. Таким образом, выражение number < 5 оценивается как true . Следовательно, код внутри блока if выполняется. Код после оператора if всегда будет выполняться независимо от выражения.

Теперь измените значение number. к чему-то большему, чем 5 , например 10 . Когда мы запустим программу, вывод будет:

This statement is always executed.

Выражение number < 5 вернет false , поэтому код внутри блока if не будет выполнен.

<час>

Выражение C# if...else (if-then-else)

Оператор if в C# может иметь необязательный оператор else. Блок кода внутри оператора else будет выполнен, если выражение оценивается как false. .

Синтаксис оператора if...else в C#:

if (boolean-expression)
{
	// statements executed if boolean-expression is true
}
else
{
	// statements executed if boolean-expression is false
}

Например,

if (number < 5)
{
	number += 5;
}
else
{
	number -= 5;
}

В этом примере оператор

number += 5;

будет выполняться, только если значение number меньше 5 .

Заявление

number -= 5;

будет выполнено, если значение числа больше или равно 5 .

Как работает выражение if...else?

<рисунок>

Пример 2. Оператор C# if...else

using System;

namespace Conditional
{
	class IfElseStatement
	{
		public static void Main(string[] args)
		{
			int number = 12;

			if (number < 5)
			{
				Console.WriteLine("{0} is less than 5", number);
			}
			else
			{
				Console.WriteLine("{0} is greater than or equal to 5", number);
			}

			Console.WriteLine("This statement is always executed.");
		}
	}
}

Когда мы запустим программу, вывод будет таким:

12 is greater than or equal to 5
This statement is always executed.

Здесь значение число инициализируется значением 12 . Итак, выражение number < 5 оценивается как false . Следовательно, выполняется код внутри блока else. Код после оператора if..else всегда будет выполняться независимо от выражения.

Теперь измените значение числа на меньшее, чем 5. , например 2 . Когда мы запустим программу, вывод будет:

2 is less than 5
This statement is always executed.

Выражение number < 5 вернет true, поэтому код внутри блока if будет выполнен.

Тернарный оператор в C# обеспечивает сокращение для оператора C# if...else.

<час>

Выражение C# if...else if (if-then-else if)

Когда у нас есть только одно условие для проверки, операторы if-then и if-then-else работают нормально. Но что, если у нас есть несколько условий для проверки и выполнения одного из множества блоков кода.

В таком случае мы можем использовать оператор if..else if в C#. Синтаксис оператора if...else if:

if (boolean-expression-1)
{
	// statements executed if boolean-expression-1 is true
}
else if (boolean-expression-2)
{
	// statements executed if boolean-expression-2 is true
}
else if (boolean-expression-3)
{
	// statements executed if boolean-expression-3 is true
}
.
.
.
else
{
	// statements executed if all above expressions are false
}

Оператор if...else if выполняется из сверху в вниз . Как только тестовое выражение равно true , код внутри этого блока if (или else if) выполняется. Затем элемент управления выходит из блока if...else if.

Если ни одно из выражений не равно true , выполняется код внутри блока else.

В качестве альтернативы мы можем использовать оператор switch в таких условиях.

Пример 3. Оператор C# if...else if

using System;

namespace Conditional
{
	class IfElseIfStatement
	{
		public static void Main(string[] args)
		{
			int number = 12;

			if (number < 5)
			{
				Console.WriteLine("{0} is less than 5", number);
			}
			else if (number > 5)
			{
				Console.WriteLine("{0} is greater than 5", number);
			}
			else
			{
				Console.WriteLine("{0} is equal to 5");
			}
		}
	}
}

Когда мы запустим программу, вывод будет таким:

12 is greater than 5

Значение числа инициализируется равным 12 . Первое тестовое выражение number < 5 это false , поэтому управление переместится в блок else if. Тестовое выражение number > 5 true следовательно, будет выполнен блок кода внутри else if.

Точно так же мы можем изменить значение number. чтобы изменить ход выполнения.

<час>

Вложенное выражение if...else

Оператор if...else может существовать внутри другого оператора if...else. Такие операторы называются вложенными операторами if...else.

Общая структура вложенного оператора if…else:

if (boolean-expression)
{
	if (nested-expression-1)
	{
		// code to be executed
	}
	else
	{
	// code to be executed
	}
}
else
{
	if (nested-expression-2)
	{
		// code to be executed
	}
	else
	{
		// code to be executed
	}
}

Вложенные операторы if обычно используются, когда нам нужно проверить одно условие, за которым следует другое. Во вложенном операторе if, если внешний оператор if возвращает значение true, он входит в тело для проверки внутреннего оператора if.

Пример 4. Вложенный оператор if...else

Следующая программа вычисляет наибольшее число из трех, используя вложенный оператор if...else.

using System;
 
namespace Conditional
{
	class Nested
	{
		public static void Main(string[] args)
		{
			int first = 7, second = -23, third = 13;
			if (first > second)
			{
				if (firstNumber > third)
				{
					Console.WriteLine("{0} is the largest", first);
				}
				else
				{
					Console.WriteLine("{0} is the largest", third);
				}
			}
			else
			{
				if (second > third)
				{
					Console.WriteLine("{0} is the largest", second);
				}
				else
				{
					Console.WriteLine("{0} is the largest", third);
				}
			}
		}
	}
}

Когда мы запустим программу, вывод будет таким:

13 is the largest

Язык C

  1. Beeper
  2. Оператор переключения C#
  3. Оператор C# break
  4. C# оператор продолжения
  5. Вложенный класс С#
  6. Оператор Python, отступы и комментарии
  7. Вложенный и внутренний класс Java
  8. C — базовый синтаксис
  9. C — константы и литералы
  10. C# — константы и литералы