문제
scanf
함수에서 사용하는 형식 지정자 %[]
는 문자 집합을 지정하여 입력을 처리하는 방식이다. 이를 통해 입력받을 수 있는 문자 범위를 정의할 수 있다.
%[]
는 문자 클래스를 지정하는 방식으로, 특정 범위의 문자를 입력받을 수 있게 한다.예를 들어
%[0-9]
는 숫자만 입력받고,%[a-zA-Z]
는 영문 알파벳만 입력받는다.대괄호 안에 특정 범위를 지정하거나,
^
를 사용하여 범위를 제외할 수도 있다.
예시
%[0-9]
: 숫자만 입력받는다.%[a-z]
: 영어 알파벳 소문자를 입력받는다.%[A-Z]
: 영어 알파벳 대문자를 입력받는다.%[a-zA-Z]
: 영어 알파벳(대소문자)을 입력받는다.%[0-9a-zA-Z]
: 숫자나 영어 알파벳(대소문자)을 입력받는다.%[^0-9]
: 숫자가 아닌 모든 문자를 입력받는다.%[^a-zA-Z]
: 영어 알파벳(대소문자)이 아닌 모든 문자를 입력받는다.%[^\n]
: 개행 문자(\n
)를 제외한 모든 문자를 입력받는다.
[문제]
슈퍼마켓의 하나의 제품에 대하여 네 가지 데이터 (종류, 물건 이름, 수량, 가격)이 '|'으로 구분되어 주어졌을 때,
이를 형식에 맞추어 출력하는 프로그램을 작성하시오.
입력
첫 줄에 길이
해당 문자열은 문자
|
이 정확히 세 개가 포함된다.서로 다른 문자
|
는 서로 연속하여 있지 않음이 보장되며, 맨 앞과 맨 뒤에는 위치하지 않는다.이는 네 가지 데이터 (종류, 물건 이름, 수량, 가격)을 의미한다.
종류는 대소문자 영문 알파벳으로 이루어져 있다.
물건 이름은 문자
|
를 제외한 그 어떤 문자로도 이루어졌을 수 있다.수량과 가격은 숫자와 문자
,
로 이루어져 있다.
출력
출력 형식을 참고하여 네 가지 데이터를 각각 출력한다.
예제1
Fruit|Apple|65,000|6,000
Type:Fruit
Name: Apple
Count: 65,000
Price: 6,000
예제2
Shoe|Nik_das
[#999]|10|249,990Type:Shoe
Name: Nik_das [#999]
Count: 10
Price: 249,990