산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C# if, if...else, if...else if 및 중첩된 if 문

C# if, if...else, if...else if 및 중첩된 if 문

이 기사에서는 C#에서 if, if...else, if...else if 문을 사용하여 프로그램 실행 흐름을 제어하는 ​​방법을 배웁니다.

프로그래밍에서 조건 테스트는 불가피합니다. 우리는 종종 조건을 테스트해야 하는 상황에 직면할 것입니다(true 또는 false ) 프로그램의 흐름을 제어합니다. 이러한 조건은 사용자의 입력, 시간 요소, 프로그램이 실행되는 현재 환경 등에 의해 영향을 받을 수 있습니다.

이 기사에서는 C#에서 if 문을 사용하여 조건을 테스트하는 방법을 배웁니다.

<시간>

C# if(if-then) 문

C# if-then 문은 주어진 조건이 참이면 코드 블록을 실행합니다. C#에서 if-then 문의 구문은 다음과 같습니다.

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

예를 들어,

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

이 예에서 명령문

number += 5;

number의 값이 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) 문

C#의 if 문에는 선택적 else 문이 있을 수 있습니다. 표현식이 false으로 평가되면 else 문 내부의 코드 블록이 실행됩니다. .

C#에서 if...else 문의 구문은 다음과 같습니다.

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;

number의 값이 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 문이 제대로 작동합니다. 하지만 여러 코드 블록 중 하나를 테스트하고 실행하기 위한 여러 조건이 있다면 어떻게 될까요?

이러한 경우 C#에서 if..else if 문을 사용할 수 있습니다. 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 문을 사용하여 3개의 숫자 중 가장 큰 숫자를 계산합니다.

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. 신호음
  2. C# switch 문
  3. C# break 문
  4. C# 계속 문
  5. C# 중첩 클래스
  6. Python 문, 들여쓰기 및 주석
  7. Java 중첩 및 내부 클래스
  8. C - 기본 구문
  9. C - 상수 및 리터럴
  10. C# - 상수 및 리터럴