반응형

【 C 언어 】 #53 puts() 사용하여 문자열 출력하기



 문자열 전용 출력 함수인 puts()에 대해 다루어 보고, 역시 문자열 출력이 가능한 printf()와의 차이점에 대해서도 설명하려 한다. 


▶ 문제 1 

 "봄", "여름", "가을", "겨울" 각각의 단어를 define문으로 정의 하고ㅔputs() 함수를 사용하여 화면에 출력 하시오.  (SPRING, SUMMER, AUTUMN, WINTER)

또한 여름을 summer,  가을을 autumn 으로 문자열 상수(const char*) 로 선언하여 함께 출력해보라.


▶ 실행 결과 :

(이미지 클릭, 확대해서 보세요)

▶ 포인트 

- puts() 함수의 원형   :  int puts(const char* string); 

- #define SPRING "봄"  ,  #define SUMMER "여름" ,  ....


▶ 프로그램 (답안 예시) : 

(이미지 클릭, 확대해서 보세요)



▶ 코드 설명 :  

- const char* summer = "여름";  으로 정의 하여 사용하게 되면 프로그램 내에서는 변경이 불가 하다. 

- const char* autumn = AUTUMN;     처럼 기존 #define 문으로 정의 된 AUTUMN을 대입 선언할 수 도 있다.




----------------------------------------------------------------------------------------------------------


▶ 문제 2 

 위 프로그래밍 내용에서 printf() 문을 추가 사용하여 "봄", "여름", "가을", "겨울" 을 각각 출력하시오.  puts(), 와 printf()문의 차이를 확인하시오.


▶ 실행 결과 :

(이미지 클릭, 확대해서 보세요)



▶ 포인트 


[ puts() 함수와 printf() 함수와의 차이 ]


puts() 함수는 캐리지 리턴 이라고 하는 개행 문자('\n') , 즉 줄바꿈 명령어가 자동으로 기능한다.  이에 반해 printf()는 줄바꿈을 하려면 개행문자가 필요하다

- puts()는 문자열만 출력 가능하지만,  printf()는 문자열 뿐 아니라, %d, %f, %c, %s 등 정수, 실수, 문자, 문자열 등 다양한 출력이 가능하다)

- 따라서 printf()는 puts() 보다 리소스 자원을 많이 차지 하게 되고, 프로그램 실행속도에도 영향을 미치게 된다.  그러므로 필요한경우 puts()와 printf()를 적절히 구분해서 사용하면 된다. 



▶ 프로그램 (답안 예시) : 

(이미지 클릭, 확대해서 보세요)



+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



▶ 소스코드 다운로드 :  


문제 1,2 :  

52 puts() 사용하여 문자열 출력하기.cpp


반응형