[정보처리기사 필기] 프로그래밍 언어 활용 - 100. 데이터 입출력

1. C언어의 표준 입출력 함수의 개요

  • 키보드로 입력받아 화면으로 출력할 때 사용하는 함수
  • 종류 : scanf(), getchar(), gets(), printf(), putchar(), puts() 등

2. scanf() 함수

  • C언어의 표준 입력 함수
  • 키보드로 입력받아 변수에 저장하는 함수
  • 형식 : scanf(서식 문자열, 변수의 주소)
    • 서식 문자열 : 입력받을 데이터의 자료형을 지정
    • 변수의 주소 : 데이터를 입력받을 변수를 적음, 변수의 주소로 입력 받아야하기 때문에 변수에 주소연산자 &을 붙임
  • 특징
    • 입력받을 데이터의 자료형, 자릿수 등을 지정할 수 있음
    • 한 번에 여러 개의 데이터를 입력받을 수 있음
    • 서식 문자열과 변수의 자료형은 일치해야 함
  • 서식 문자열
    • %d : 정수형 10진수
    • %u : 부호없는 정수형 10진수
    • %o : 정수형 8진수
    • %x : 정수형 16진수
    • %c : 문자
    • %s : 문자열
    • %f : 소수점을 포함하는 실수
    • %e :지수형 실수
    • %ld : long형 10진수
    • %lo : long형 8진수
    • %lx : long형 16진수
    • %p : 주소를 16진수로 입출력

3. printf() 함수

  • C언어의 표준 출력 함수
  • 인수로 주어진 값을 화면에 출력하는 함수
  • 형식 : printf(서식 문자열, 변수)
    • 서식 문자열 : 변수의 자료형에 맞는 서식 문자열을 입력
    • 변수 : 서식 문자열의 순서에 맞게 출력할 변수를 적음, scanf()와 달리 주소 연산자 &을 붙이지 않음
  • 주요 제어문자
    • 문자 의미 기능
      \n new line 커서를 다음 줄 앞으로 이동
      \b backspace 커서를 왼쪽으로 한 칸 이동
      \t tab 커서를 일정 간격 띄움
      \r camage return 커서를 현재 줄의 처음으로 이동
      \o null 널 문자 출력
      \' single quote 작은따옴표 출력
      \" double quote 큰따옴표 출력
      \a alert 스피커로 벨 소리를 출력
      \\ backslash 역 슬래시 출력
      \t form feed 한 페이지를 넘김

4. 기타 표준 입출력 함수

  • 입력
    • getchar() : 키보드의 한 문자을 입력받아 변수에 저장하는 함수
    • gets() : 키보드로 문자열을 입력받아 변수에 저장하는 함수, Enter을 누르기 전까지를 하나의 문자열로 인식하여 저장
  • 출력
    • putchar() : 인수로 주어진 한 문자를 화면에 출력하는 함수
    • puts() : 인수로 주어진 문자열을 화면에 출력한 후 커서를 자동으로 다음 줄 앞으로 이동하는 함수

5. JAVA에서의 표준 입출력

  • 표준 입력
    •  형식
      • Scanner scan01 = new Scanner(System.in);
        InNum = scan01.nextInt();
      • 객체 변수 생성
        • Scanner : 입력에 사용할 객체 변수를 생성할 때 사용하는 클래스 이름
          • Scanner 클래스의 입력 메소드
            • next() : 입력값을 문자열로 변환
            • nextLine() : 입력받은 라인전체를 문자열로 변환
            • nextInt() : 정수형
            • nextFloat() : 실수형
        • scan01 : 객체 변수명, 사용자 임의 지정 가능
        • new : 객체 생성 예약어
        • Scanner() : 클래스의 이름
        • System.in : 표준 입력장치
      • 객체 변수 활용
        • inNum : 입력받은 값을 저장할 변수, 미리 선언되어 있어야 함
        • scan01.nextInt()
          • scan01 : 입력에 사용할 객체 변수 이름, 객체 변수 생성 시 사용한 객체 변수 이름과 동일해야 함
          • nextInt : 입력받은 값을 정수형으로 반환
  • 표준 출력
    •  값을 화면에 출력할 때는 서브 클래스인 out클래스의 메소드 printf(), printIn(), print() 등을 사용하여 출력
    • 형식
      • System.out.printf(서식 문자열, 변수) : 서식 문자열에 맞게 변수의 내용 출력, C언어의 printf()와 동일
      • System.out.print() : 값이나 변수의 내용을 형식없이 출력
        • 문자열을 출력할 때는 큰따옴표로 묶어줘야 함
        • 문자열 또는 문자열 변수를 연속으로 출력할 때는 +를 이용
        • 출력 서식 타입에 따른 출력 형태
          • 숫자+숫자 : 두 숫자를 합한 값
          • 문자열+숫자, 숫자+문자열 (문자열과 숫자가 섞인 경우) : 문자열로 인식되어 값이 붙어서 출력
      • System.out.printIn() : 값이나 변수의 내용을 형식없이 출력한 후 커서를 다음 줄의 처음으로 이동, 출력 형식을 제외하면 print() 메소드와 사용법이 동일