switch문

switch (변수나 식)
{
    case 값1:
        // 값1이 나온 경우 실행되는 코드
        break;
    case 값2:
        // 값2가 나온 경우 실행되는 코드
        break;
    // ...
    default:
        // 모든 case문에 해당하지 않는 경우 실행되는 코드
        break;
}

 

  • switch문은 하나의 변수나 표현식 결과를 여러 경우로 나누어 처리할 때 사용합니다.
  • case는 반드시 break로 종료해줘야 하며, 그렇지 않으면 다음 case로 넘어갑니다.

 

 

 

3항 연산자

if문을 간단한 형태로 나타낼 수 있는 연산자로 두 개의 결과중 하나를 선택할 때 유용합니다.

(조건식)? 참일 경우 값 : 거짓일 경우 값;

 

예시

int currentExp = 1200;
int requiredExp = 2000;

# 삼항 연산자
string result = (currentExp >= requiredExp) ? "레벨업 가능" : "레벨업 불가능";
Console.WriteLine(result);

 

조건문 심화 실습

1) 홀수, 짝수 구분

더보기
Console.Write("번호를 입력하세요: ");
int number = int.Parse(Console.ReadLine());

if (number % 2 == 0)
{
    Console.WriteLine("짝수입니다.");
}
else
{
    Console.WriteLine("홀수입니다.");
}

번호 입력칸에 Console.ReadLine으로 입력값을 받고 int로 변환하여 number 변수에 저장된다.

 

2) 등급 출력

더보기
int playerScore = 100;
string playerRank = "";

switch (playerScore / 10)
{
	case 10:
	case 9:
		playerRank = "Diamond";
		break;
	case 8:
		playerRank = "Platinum";
		break;
	case 7:
		playerRank = "Gold";
		break;
	case 6:
		playerRank = "Silver";
		break;
	default:
		playerRank = "Bronze";
		break;
}

Console.WriteLine("플레이어의 등급은 " + playerRank + "입니다.");

모든 조건문 사용시 규칙찾기가 중요하다.

90대는 90~99

80대는 80~89

70대는 70~79

 

같은 숫자부분은 10으로 나눌때 앞자리가 같은수가 나온다.

 

단, 95 / 10 = 9.5 (X),  9 (O)

둘다 int값이므로 0.5부분은 버려진다.

 

3) 로그인 프로그램

더보기
string id = "id";
string password = "pw";

Console.Write("아이디를 입력하세요: ");
string inputId = Console.ReadLine();
Console.Write("비밀번호를 입력하세요: ");
string inputPassword = Console.ReadLine();

if (Id == inputId && Password == inputPassword)
{
    Console.WriteLine("로그인 성공!");
}
else
{
    Console.WriteLine("로그인 실패!");
}

아이디(id)와 입력한 아이디(inputId), 비밀번호(password)와 입력한 비밀번호(inputPassword)가 같다면 (and연산자)

"로그인 성공!" 메시지 출력, 그렇지 않다면 "로그인 실패!" 메시지 출력

 

4) 알파벳 판별 프로그램

더보기
Console.Write("문자를 입력하세요: ");
char input = Console.ReadLine()[0];

if((input >= 'a'&& input <= 'z')||(input >= 'A' && input <= 'Z'))
{
    Console.Write("알파벳입니다.");
}
else
{
    Console.WriteLine("알파벳이 아닙니다.");
}

문장이 아닌 단어를 입력받으므로 char 자료형을 사용하며 [0]은 0번째 인덱스를 가져온다. (맨앞 첫글자)

입력받은 문자값이 input 변수에 저장된다.

 

IF문 해설

input이 소문자 a보다 크거나 같으면서 (&&, and)  z보다 작거나 같고

(|| or) 대문자 A 보다  크거나 같으면서 (&&, and)  대문자 Z 보다 <= 작거나 같다면)

"알파벳입니다." 출력

그렇지 않을 경우 "알파벳이 아닙니다" 출력

 

 

 

 

 

'C# 문법' 카테고리의 다른 글

[C#] 배열과 컬렉션  (0) 2024.09.23
[C#] 반복문, 반복문 실습  (0) 2024.09.22
[C#] 문법 1주차 숙제  (0) 2024.09.20
[C#] 프로그래밍 기본 요소, 변수와 자료형  (0) 2024.09.19
[형변환 복습]  (0) 2024.09.06

+ Recent posts