소프트웨어/C
[2005년 기말 3번] 문자열 처리 - 문자열 배열
카켈
2007. 2. 19. 23:42
1. 목적
- 문자열 배열을 글자 단위로 처리 한다.
2. 문제 (점수 : 15 점)
- 키보드로 문자열을 입력 받되 strlen() 함수를 쓰지 않고 문자의 개수를 출력하며 반대로도 출력한다.
- 출력 화면
문자열을 입력하세요 : C Programming Language
문자열의 길이 : 22
역순으로 출력 : egaugnaL gnimmargorP C
Press any key to continue
문자열의 길이 : 22
역순으로 출력 : egaugnaL gnimmargorP C
Press any key to continue
3. 이해
- 문자열 배열을 정확히 이해하는가?
- 문자가 저장되는 방식을 이해하는가?
- 문자를 불러낼수 있는가?
4. 코드
#include <stdio.h>
int main()
{
char in[255] = {0};
int length = 0;
printf("문자열을 입력하세요 : ");
gets(in);
while(in[length] != 0) length++;
printf("문자열의 길이 : %d\n",length);
printf("역순으로 출력 : ");
while(length > 0)
{
putchar(in[length-1]);
length--;
}
putchar('\n');
return 0;
}
5. 해설
- 문자열은 문자형 자료를 배열형으로 저장했기 때문에 자유롭게 불러 쓸수 있으며 저장할수 있습니다.
- 0 값이 NULL 문자로써 문자의 끝을 의미하기 때문에 문자의 경계를 짓는데 중요한 계념을 가집니다.
- 문자에 대해 잘 다룰수 있으면 string.h 에 있는 함수를 쓰지 않고도 기초적인 문자열을 다룰수 있습니다.
6. 참고
- http://winapi.co.kr/clec/cpp1/3-5-3.htm : 문자열