티스토리 뷰




이번에 볼 소스는 함수 gets()로 문자열을 입력 받아서 공백단위로 출력시키는 소스입니다. 문자열을 입력받아서 공백 단위로 끊어서 출력하는 소스이지요.


예를들어 i love you라고 입력하면

I

love

you

라고 출력하는 예제입니다.


먼저 출력 화면을 보도록 하겠습니다. 다음과 같이 출력되게 소스를 구성하면 되겠습니다.






소스보기


아래는 C언어로 구현한 gets()를 이용한 공백 단위로 끊어 출력하기 소스입니다.


#include <stdio.h> 

int main(void) { 
   char input[100]; 
   int i; 
   
   gets(input); 

   for (i = 0; input[i] != '\0'; i++) { 
	  // 해당 글자가 뛰어쓰기이면 
	  // 줄바꿈으로 전환 
      if(input[i] == ' '){
         input[i] = '\n';
      } 
   } 
   printf("%s\n",input); 
   return 0; 
}



출력결과 보기


아래의 화면은 위의 소스를 실행한 화면입니다.

화면을 보시면 입력으로 i love you라는 문자열을 입력한 것을 볼 수 있는데요. i love you라는 문자열에서 공백을 '\n' 개행문자로 바꾸어서 출력하기 때문에 i 한 줄, love 한 줄, you 한 줄로 한 줄씩 출력되게 됩니다.







꼭 위에 있는 소스 같이 짜야 하나요?


꼭 위에 있는 소스와 똑같이 짜야 하나요? 라고 질문하는 분이 있으실 것 같은데요. 아닙니다. 다른 방법으로도 소스코드를 프로그래밍 하실 수 있습니다. 다만 하나의 예제 소스라고 보여드린 것이지요. 아래와 같이 소스코드를 프로그래밍 하신 분들도 있습니다.



#include <stdio.h> 
int main(void) { 
   char input[100]; 
   int i; 
   printf("Input a sentence: "); 
   gets(input); 
   for (i = 0; input[i] != '\0'; i++) { 
      if (input[i] == ' ') puts(""); 
      else putchar(input[i]); 
   } 
   puts(""); 
   return 0; 
} 
댓글