반응형
728x170
이제 예제 2를 해볼까
https://www.hackerrank.com/challenges/playing-with-characters/problem
Playing With Characters | HackerRank
input character, string and a sentence
www.hackerrank.com
그냥 링크를 올려야지
배경지식
char ch;
ch라는 변수명을 가진 저장공간을
char라는 자료형으로 만든 것이다.
scanf("%c", &ch);
문자를 입력받아서 &ch(ch의 주소) 에 저장하는 것이다.
(공백이나 엔터로 문자열을 구분한다)
printf("%c", ch);
%c 문자를 출력할 것인데 그 문자는 ch이다.
s[MAX_LEN] s라는 문자열의 크기를 MAX_LEN에 넣으면 된다.
MAX_LEN이 없으면 알아서 s에 입력한대로 저장이 된다.
[ ] 는 scanset character라고 하는데, []안을 스캔하는 것이다.
2가지로 []를 활용할 수 있다.
1. %[필터링 조건] 대괄호 안에 있는 것 외의 문자를 만날시에 입력을 중단한다.
2. %[^입력종료 조건] 은 대괄호 안에 있는 것을 만나면 입력 종료.
%*c 는 c자료형 읽기는 하지만 할당하지는 않겠다는 의미다
이렇게 하면 되는데
배열은 이미 주소를 가리키는 것이라 &를 안씀.
1. ch에 C를 넣는다.
단문자니까 %c
2.s에 Language를 넣어야한다.
그러나 공백을 만나면 멈추니까 알아서 Language까지 입력된다
3.sen에 문장을 넣어야한다.
그러나 문자열을 공백으로 구분되어서 \n이 읽히지 않고 남아있었다.
그래서
scanf("\n");
728x90
반응형
그리드형
'문제풀이(Problem Solving)' 카테고리의 다른 글
C언어 예제 7 "For Loop in C" [HackerRank] (0) | 2020.03.16 |
---|---|
C언어 예제 5 "Pointers in C" [HackerRank] (0) | 2020.03.16 |
C언어 예제 4 "Functions in C" [HackerRank] (0) | 2020.03.16 |
C언어 예제 3 "Sum and Difference of Two Numbers" [HackerRank] (0) | 2020.03.15 |
C언어 예제 1 "Hello World!" [HackerRank] (0) | 2020.03.14 |