Language/C C언어 Linux강좌(switch문/리눅스 명령어/getchar-putchar/반복문 while)
  • 728x90
    반응형

     

    C언어 Chapter 8.


     

     

    목차

       

       

      switch() 문

      📌 switch 문은 괄호속의 정수식의 값과 case 다음의 정수 값을 차례로 비교하여 일치할 경우 해당 case 문과 그다음 모든 case 문들이 실행된다. 그러므로 각 case 문은 break 문으로 실행을 중단시킨다.

       

      1. switch 문 뒤의 괄호 속에 정수값을 가지는 변수또는 수식이 올수있다. int형이나 char 형이 올수있지만, 실수형은 올 수 없다.
      2. switch 문의 실행부는 중괄호에 둘러싸인다.
      3. 각 case 문은 case로 시작하여 정수값을 가지는 상수와 클론 (:위치정보 = 라벨)이 오고 그 뒤에 명령문들이온다. (아래로 내려 들여쓸것)
      4. 각 case 문의 클론 다음에 오는 명령문이 복합문일 경우에도 중괄호로 둘러싸지 않는다.
      5. case 문의 마지막에는 default 문이 온다. default문은 case 문이 하나도 실행되지 않았을 경우 실행된다. (생략 가능)

       

       

      🔔 예) 시험 점수를 입력받아 switch문을 이용하여 학점을 구하는 프로그램

       

       

      결과 :case 10 에는 break를 걸지 않았음으로 100 이상의 숫자에 다음 case 9값이 출력된다.

       

       

       

      Linux 명령어

      command 모드

      • v 방향키 : 드래그
      • j ( join ) : 위줄과 합침
      • o (대/소문자) : 바로 위 or 밑줄에서 에디터 모드
      • u (undo) : 되돌리기
      • . (redo) : 앞으로 돌리기

       

      getchar() / putchar() 문자 입출력 함수

      • 입력되는 문자를 하나씩 읽는 함수이다.
      • 형식지정자를 사용할 필요가 없다.
      • 실행속도가 빠르다.

      💡 TIP : getchar();를 이용해서 블로킹(프로그램을 끝내지않고 대기상태) 효과를 줄수 있다.

       

      🔔 예) getchar() / putchar() 함수를 이용하여 키보드로부터 한 문자를 입력 받아 화면에 출력하는 프로그램

       

       

      fflush (stdin) 은 getchar 에서 출력하고 출력대기상태의 <엔터키> 를 지워준다.

      엔터를 지우지 않으면 아래의 scanf 함수에 엔터가 들어가게된다.

      dos 환경에서 사용가능 Linux 에서는 되지않는다.

       

      결과

       

       

       

      getche() / getch() / putch()

      📌 입력되는 문자를 <엔터 키>를 누르지 않고 즉시 버퍼를 사용하지않고 읽는다.

       

      💡 버퍼 ? "엔터 키"를 누르기전에 임시기억

       

      • getch() 함수는 입력된 문자를 화면에 출력시키지않는다.
      • getche() 함수는 입력된 문자를 화면에 출력 시킨다. (getche끝에e=echo 메아리)
      • putch() 는 위의 두함수에 대응하는 출력 함수이다.
      • 위 함수들은 <conio.h>콘솔 io파일에 선언되어 있다. (dos전용)

       

      표제부(프로토타입) 원형

      int getch (void);
      int getche(void);
      int putch (int);

       

      💡 키보드로 입력받음으로 char 형으로 사용가능

       

       

      🔔 예) getch(), getche(), putch() 함수를 이용한 문자 입출력 프로그램;

       

       

      결과 : a는 getche 문임으로 입력문자를 보여주고 b 는 getch 문으로 입력문자는 보여 주지않는다.

       

       

       

      반복문 while

      📌 주어진 조건이 만족되는 동안 명령문이 반복해서 실행된다.

       

      while (논리식) 명령문

       

      • 논리식의 값이 참이면 명령문이 실행되고, 거짓이면 while 문을 벗어나 다음 명령문이 실행된다. 실행된다음 논리식의 값을 다시 검토후 while 문의 반복실행 여부가 결정 된다.
      • 복합문일경우 중괄호를 사용하여 쓴다.

       

       

      🔔 예) while 문을 이용하여 화면에 0부터 5까지 출력하는 프로그램

       

       

      💡 \t 는 들여쓰기를 하는 tab이다.

       

      결과

       

       

       

       

       

       

       

      728x90
      반응형
    상단으로