C를 사용하여 문자, 문자열 및 문장(공백이 있는 문자열)을 사용한다고 가정합니다. 따라서 3개의 입력을 제공하고 출력과 동일하게 인쇄합니다. 여기서 문자열의 최대 크기는 500입니다.
따라서 입력이 다음과 같으면
character = 'T' string = "ProgrammingLanguage" sentence = "I love programming through C",
그러면 출력은
Your character: T Your string: ProgrammingLanguage Your sentence: I love programming through C
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
-
문자의 경우 scanf("%c", &character);
를 사용해야 합니다. -
string의 경우 scanf("%s", string);
를 사용해야 합니다. -
이 단계는 선택 사항이지만 경우에 따라 필수입니다. 때로는 한 가지 문제에 직면할 수 있습니다. 프로그램은 때때로 다음 입력을 기다리지 않으므로 fflush(stdin)
를 사용하여 버퍼를 지워야 합니다. -
그리고 공백이 있는 문자열의 경우 fgets() 함수를 사용해야 합니다. 여기서 첫 번째 매개변수는 문자열이고 두 번째 매개변수는 크기이며 마지막 매개변수는 stdin입니다. 콘솔에서 입력을 받습니다.
-
마지막 것은 문자열의 끝을 나타내기 위해 하나의 줄 바꿈 문자가 필요함을 나타냅니다. 그렇지 않으면 공백도 필요합니다.
예
이해를 돕기 위해 다음 구현을 살펴보겠습니다. −
#include <stdio.h> int main(){ char character; char string[500]; char sentence[500]; scanf("%c", &character); scanf("%s", string); fflush(stdin); fgets(sentence, 500, stdin); printf("Your character: %c\n", character); printf("Your string: %s\n", string); printf("Your sentence: %s\n", sentence); }
입력
T ProgrammingLanguage I love programming through C
출력
Your character: T Your string: ProgrammingLanguage Your sentence: I love programming through C