본문 바로가기

   
Programming/C#

제어문

반응형

제어문

 - 제어흐름(실행순서)이 위-아래로 진행(라인단위)

 - 원하는 흐름으로 제어

 

1. 조건문(if, switch)

2. 반복문(for, while, do-while, foreach)

3. 분기문(break, continue, goto)

   제어흐름을 벗어났던 녀석은 매서드가 있었다.

   => 알고리즘 (정보 올림피아드), 자료구조

 

 

조건문(분기문)

 - 하나의 조건이 주어지고, 그조건의 결과값에 따라 실행하는 코드가 분기되는 제어문

 

if

 - 조건문은 반드시 bool값 반환

 - if(조건문)

   {

         실행코드://조건을 만족시켰을때 실행

   }

 

using System;

 

namespace Csharp

{

    class Test

    {

        public static void Main(string[] args)

        {

            //1. 숫자 => 양수 o, 음수 x

            int num = 0;

           

            //조건문을 가장 먼저 검사(num >= 0)

            //무조건 1번은써야됨

            if(num > 0)

            {

                Console.WriteLine("양수");

            }//제어는 끝불럭에 걸린다.

            

             //2. 다중조건문 0 개 이상이 가능하다. 0에서부터 최대수는 사용할만큼 사용할수 있어 제한없음.

            else if(num < 0)

            {

                Console.WriteLine("음수");

            }

 

            else//조건을 불만족시켰을때 실행

            //써도 되고 안써도 됨

            {

                Console.WriteLine("0입니다.");

            }

 

 

            //0 : false

            //1 : true

            //C#은 반드시 if(true) false 가들어가야 한다.반드시 블리언값을 갖는 조건문이 들어가야 한다.

 

        }

    }

}

 

 

using System;

 

namespace Csharp

{

    class Test

    {

        public static void Main(string[] args)

        {

            int num;

            string result;

 

            Console.Write("수입력 : ");

            num = int.Parse(Console.ReadLine());           

            if(num % 2 == 0)

            {

                result = "짝수";

            }

           

            else

            {

                result = "홀수";

            }

            Console.WriteLine("input : {0} ouput : \"{1}\" 입니다.",num ,result);

        }

    }

}

 

 using System;

 

namespace Csharp

{

    class Test

    {

        public static void Main(string[] args)

        {

            int age;

 

            Console.Write("나이입력 : ");

            age = int.Parse(Console.ReadLine());       

           

            if(age >= 20 && age < 60)

            {

                Console.WriteLine("통과");

            }

           

            else

            {

                Console.WriteLine("탈퇴");

            }

 

        }

    }

}

 

 

switch

  - 변수(데이터)를 제시한 후 변수(데이터)의 값에 따라서 분기되는 조건문

  - 조건 : 정수, 실수, bool, char, string 다들어간다.

**스위치문 다른 형태는 없다

**수치의 범위가 필요한 경우는 무조건 if 문이 좋다

** 1:1 형태라고 보면된다.

 

  - switch(조건)      => int num = 2 라면 case 2 를 찾아서 case2 코드를 처리한다.;

    {

       case "1":      => 라벨 Label; 어떠한 간판 개념 - 1 에 변수를넌다.

            실행코드;

            break;

       case "2":

           실행코드;

           break;

      case "3" :

           실행코드;

      default :           => if 문의 else라고 보면 된다.

           실행코드;

           break;       => 브레이크를 만나 현재구문을 빠져 나간다.

    }

 

using System;

 

namespace Csharp

{

    class Test

    {

        public static void Main(string[] args)

        {

            Console.WriteLine("음료명 : ");

            string input = Console.ReadLine();

           

            switch (input)//혹은 Console.ReadLine() 을 넣어도 된다.

            {

                case "콜라":

                case "사이다": //콜라 and 사이다 가걸려도 출력후 빠져나감

                    Console.WriteLine("700원입니다.");

                    break;     

               

                case "박카스":

                    Console.WriteLine("600원입니다.");   

                    break;

               

                default:

                    Console.WriteLine("그런 음료수는 없습니다.");

                    break;

               

            }

            /*

            if(input == "콜라")

            {

                Console.WriteLine("700원입니다.");                   

            }

 

            else if(input == "사이다")

            {

                Console.WriteLine("600원입니다.");                   

            }

 

            else if(input == "박카스")

            {

                Console.WriteLine("600원입니다.");   

            }

 

            else

            {

                Console.WriteLine("그런 음료수는 없습니다.");

            }

            */

        }

    }

}

 

반응형