C 언어
이 기사에서는 C#의 switch 문과 예제와 함께 사용하는 방법에 대해 알아봅니다.
Switch 문은 C#에서 if...else if 문을 대체하는 데 사용할 수 있습니다. if...else if 문보다 switch를 사용하는 이점은 switch를 사용하면 코드가 훨씬 깨끗하고 읽기 쉬워진다는 것입니다.
switch 문의 구문은 다음과 같습니다.
switch (variable/expression) { case value1: // Statements executed if expression(or variable) = value1 break; case value2: // Statements executed if expression(or variable) = value1 break; ... ... ... ... ... ... default: // Statements executed if no case matches }
switch 문은 표현식을 평가합니다. (또는 변수 ) 해당 값을 각 경우의 값(또는 표현식)과 비교합니다(value1 , 값2 , …). 일치하는 값을 찾으면 해당 케이스 안의 문장이 실행됩니다.
그러나 위의 경우 중 어느 것도 표현식과 일치하지 않으면 default
내부의 명령문이 블록이 실행됩니다. switch 끝에 있는 기본 문은 if else 문의 else 블록과 유사합니다.
그러나 switch 문의 문제는 일치하는 값을 찾으면 그 이후의 모든 명령문을 switch 블록의 끝까지 실행한다는 것입니다.
이를 방지하기 위해 break
을 사용합니다. 각 사건의 끝에 있는 진술. break 문은 switch 문의 실행을 종료하여 프로그램이 일치하지 않는 문을 실행하는 것을 중지합니다.
break 문에 대해 자세히 알아보려면 C# break 문을 방문하세요. .
<시간>
using System;
namespace Conditional
{
class SwitchCase
{
public static void Main(string[] args)
{
char ch;
Console.WriteLine("Enter an alphabet");
ch = Convert.ToChar(Console.ReadLine());
switch(Char.ToLower(ch))
{
case 'a':
Console.WriteLine("Vowel");
break;
case 'e':
Console.WriteLine("Vowel");
break;
case 'i':
Console.WriteLine("Vowel");
break;
case 'o':
Console.WriteLine("Vowel");
break;
case 'u':
Console.WriteLine("Vowel");
break;
default:
Console.WriteLine("Not a vowel");
break;
}
}
}
}
프로그램을 실행하면 다음과 같이 출력됩니다.
Enter an alphabet X Not a vowel
이 예에서 사용자에게 알파벳을 입력하라는 메시지가 표시됩니다. 알파벳은 ToLower()
을 사용하여 소문자로 변환됩니다. 대문자인 경우 메서드입니다.
그런 다음 switch 문은 사용자가 입력한 알파벳이 a, e, i, o or u
중 하나인지 확인합니다. .
케이스 중 하나가 일치하면 Vowel
그렇지 않으면 컨트롤이 기본 블록으로 이동하고 Not a vowel
이 인쇄됩니다. 출력으로 인쇄됩니다.
모든 모음의 출력이 동일하므로 다음과 같이 대소문자를 결합할 수 있습니다.
<시간>
using System;
namespace Conditional
{
class SwitchCase
{
public static void Main(string[] args)
{
char ch;
Console.WriteLine("Enter an alphabet");
ch = Convert.ToChar(Console.ReadLine());
switch(Char.ToLower(ch))
{
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
Console.WriteLine("Vowel");
break;
default:
Console.WriteLine("Not a vowel");
break;
}
}
}
}
두 프로그램의 출력은 동일합니다. 위의 프로그램에서 모든 모음은 출력 Vowel
를 출력합니다. 그리고 switch 문에서 나갑니다.
switch 문을 사용하면 if...else if 문보다 코드가 더 깔끔해 보이지만 switch는 제한된 데이터 유형에서만 작동하도록 제한됩니다. C#의 Switch 문은 다음에서만 작동합니다.
using System;
namespace Conditional
{
class SwitchCase
{
public static void Main(string[] args)
{
char op;
double first, second, result;
Console.Write("Enter first number: ");
first = Convert.ToDouble(Console.ReadLine());
Console.Write("Enter second number: ");
second = Convert.ToDouble(Console.ReadLine());
Console.Write("Enter operator (+, -, *, /): ");
op = (char)Console.Read();
switch(op)
{
case '+':
result = first + second;
Console.WriteLine("{0} + {1} = {2}", first, second, result);
break;
case '-':
result = first - second;
Console.WriteLine("{0} - {1} = {2}", first, second, result);
break;
case '*':
result = first * second;
Console.WriteLine("{0} * {1} = {2}", first, second, result);
break;
case '/':
result = first / second;
Console.WriteLine("{0} / {1} = {2}", first, second, result);
break;
default:
Console.WriteLine("Invalid Operator");
break;
}
}
}
}
프로그램을 실행하면 다음과 같이 출력됩니다.
Enter first number: -13.11 Enter second number: 2.41 Enter operator (+, -, *, /): * -13.11 * 2.41 = -31.5951
위의 프로그램은 사용자로부터 두 개의 피연산자와 연산자를 입력받아 해당 연산자를 기반으로 연산을 수행합니다.
입력은 ReadLine()
를 사용하여 사용자로부터 가져옵니다. 및 Read()
방법. 자세히 알아보려면 C# 기본 입력 및 출력을 방문하세요.
프로그램은 의사 결정을 위해 switch case 문을 사용합니다. 또는 if-else if 사다리를 사용하여 동일한 작업을 수행할 수 있습니다.
C 언어
코드 블록을 여러 번 실행해야 하는 상황이 발생할 수 있습니다. 일반적으로 명령문은 순차적으로 실행됩니다. 함수의 첫 번째 명령문이 먼저 실행되고 두 번째 명령문이 실행되는 식입니다. 프로그래밍 언어는 더 복잡한 실행 경로를 허용하는 다양한 제어 구조를 제공합니다. 루프 문을 사용하면 명령문 또는 명령문 그룹을 여러 번 실행할 수 있습니다. 다음은 대부분의 프로그래밍 언어에서 루프 문의 일반적인 형식입니다. − C 프로그래밍 언어는 반복 요구 사항을 처리하기 위해 다음 유형의 루프를 제공합니다. 시니어 번호 루프 유형 및 설
코드 블록을 여러 번 실행해야 하는 상황이 있을 수 있습니다. 일반적으로 명령문은 순차적으로 실행됩니다. 함수의 첫 번째 명령문이 먼저 실행되고 두 번째 명령문이 실행되는 식입니다. 프로그래밍 언어는 더 복잡한 실행 경로를 허용하는 다양한 제어 구조를 제공합니다. 루프문을 사용하면 하나의 명령문 또는 명령문 그룹을 여러 번 실행할 수 있으며 다음은 대부분의 프로그래밍 언어에서 사용되는 루프문의 일반적인 내용입니다. - C#은 반복 요구 사항을 처리하기 위해 다음 유형의 루프를 제공합니다. 자세한 내용을 확인하려면 다음 링크를