1. 목적
- 문자열 속의 문자 제어를 이해한다.
2. 문제 (점수 : 10 점)
- 키보드로부터 문자열을 입력 받아 모음(a/A, e/E, i/I, o/O, u/U)만을 출력하고 그 갯수를 출력
하는 프로그램을 작성하라.
- 출력 화면
문자들을 입력하세요 : Hello World. Hi there. I'm a boy..
eooieeIao
모음의 개수 : 9개
eooieeIao
모음의 개수 : 9개
3. 이해
- 문자를 다룰줄 아는가?
- 조건문을 쓸줄 아는가?
4. 코드
#include <stdio.h>
int main()
{
char in[255];
int i,count;
i = count = 0;
printf("문자들을 입력하세요 : ");
gets(in);
while(in[i] != 0)
{
if ((in[i] == 'a' || in[i] == 'e' || in[i] == 'i' || in[i] == 'o' || in[i] == 'u') || (in[i] == 'A' || in[i] == 'E' || in[i] == 'I' || in[i] == 'O' || in[i] == 'U'))
{
putchar(in[i]);
count++;
}
i++;
}
putchar('\n');
printf("모음의 개수 : %d개\n", count);
return 0;
}
5. 해설
- if 문으로 모음이 되는 조건을 or 연산자(||)를 써서 구분했습니다.
- gets 문으로 띄워 쓰기 포함(whitespace) 문장을 받을수 있습니다.
6. 참고
- http://www.winapi.co.kr/clec/cpp1/4-1-2.htm : 조건문
- 유사 문제