리뷰

 

if ~ else 구문을 사용할 때 주의사항 두 가지

  1. else if 로 구문을 끝맺으려면 사전에 변수를 초기화 시켜야한다.

  2. else if 보다는 else 로 끝맺는 것이 좋다.


switch ~ case

다중 선택문이라 하며, switch 문 다음의 수식 값에 따라 실행 순서를 여러 방향으로 분기할 때 사용하는 문장이다.

 

형식 및 구조

   switch(수식)
   {
   case 상수1 : 문장1; [break;]
   case 상수2 : 문장2; [break;]
      :
   [default : 문장n+1; [break;]]
   } //[ ] 안의 내용은 생략 가능하다.

 


   switch 문의 『수식』과 case 의 『상수』는
   byte, short, int, long 형이어야 한다. (JDK 1.5 이전!)

   현재는 String(JDK 1.7 이후!)으로도 case 에 사용할 수 있다.



   case 문 뒤에 『break;』가 없는 형태인 경우
   다음 case 문장을 계속해서(이어서) 수행하게 된다. (→ 기본 모델)

 

break

멈춘다. 그리고  빠져나간다. (break를 감싸고 있는 가까운 반복문을 빠져나간다.)

 

return

1. 값을 반환

2. 메소드의 종료

/*=========================================
  ■■■ 실행 흐름의 컨트롤 (제어문) ■■■
  - 조건문(분기문)
  - switch 문 실습
=========================================*/

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Test039
{
	public static void main(String[] args) throws IOException
	{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String name;
		int kor, eng, mat, avg;
		char grade;

		System.out.print("이름 입력 : ");
		name = br.readLine();
		System.out.print("국어점수 입력 : ");
		kor = Integer.parseInt(br.readLine());
		System.out.print("영어점수 입력 : ");
		eng = Integer.parseInt(br.readLine());
		System.out.print("수학점수 입력 : ");
		mat = Integer.parseInt(br.readLine());

		avg = (kor+eng+mat) / 3;
		grade = 'F';
		
		/*
		if(avg>=90)
			grade = 'A';
		else if(avg>=80)
			grade = 'B';
		else if(avg>=70)
			grade = 'C';
		else if(avg>=60)
			grade = 'D';
		else
			grade = 'F';
		*/

		switch(avg/10)
		{
			case 10: case 9:
				grade = 'A';
				break;
			case 8:
				grade = 'B';
				break;
			case 7:
				grade = 'C';
				break;
			case 6:
				grade = 'D';
				break;
			//default: grade = 'F';
		}

		System.out.println();
		System.out.printf("당신의 이름은 %s 입니다.\n", name);
		System.out.printf("총점은 %d, 평균은 %d입니다.\n", (kor+eng+mat), avg);
		System.out.printf("등급은 %c 입니다.\n", grade);

	}
}

// 실행 결과 
/*
이름 입력 : 허수민
국어점수 입력 : 90
영어점수 입력 : 80
수학점수 입력 : 70

당신의 이름은 허수민 입니다.
총점은 240, 평균은 80입니다.
등급은 B 입니다.
계속하려면 아무 키나 누르십시오 . . .
*/

 

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기