Menu
Coddy logo textTech

최종 출력

Coddy C 여정의 논리 & 흐름 섹션에 포함된 레슨. 63개 중 24번째.

challenge icon

챌린지

쉬움

이전에 배운 모든 기능을 하나의 종합적인 출력으로 통합하여 텍스트 유틸리티 프로그램을 완성하세요. 프로그램은 다음을 수행해야 합니다.

  1. Enter a sentence: 를 출력하여 사용자에게 짧은 문장을 입력하라는 메시지를 표시하세요(끝에 줄바꿈 없음: printf("Enter a sentence: ")를 사용하고 printf("Enter a sentence: \n")는 사용하지 마세요).
  2. 입력을 저장할 200개 요소의 sentence라는 문자 배열을 선언하세요.
  3. %s 형식 지정자와 함께 scanf를 사용하여 사용자로부터 하나의 단어를 읽으세요.
  4. 표시를 위해 원래 단어를 별도의 문자 배열에 저장하세요.
  5. strlen()을 사용하여 전체 문자 수를 계산하세요.
  6. 각 문자를 순회하면서 소문자와 대문자 형태의 모음(a, e, i, o, u) 중 하나와 일치하는지 확인하여 모음의 개수를 세세요.
  7. 반복문에서 toupper() 함수를 사용하여 단어를 대문자로 변환하세요.
  8. 각 정보를 별도의 줄에 표시하여 모든 결과를 깔끔하고 정리된 형식으로 출력하세요.

문자열 함수에 필요한 <string.h> 헤더와 문자 변환 함수에 필요한 <ctype.h> 헤더를 포함해야 합니다.

출력은 다음의 정확한 형식으로 모든 결과를 표시해야 합니다.

Enter a sentence: Original: [word]
Characters: [count]
Vowels: [count]
Uppercase: [WORD]

중요: Enter a sentence: 프롬프트 뒤에는 줄바꿈이 없어야 합니다. 입력을 읽은 직후 Original:이라는 단어가 같은 줄에 나타납니다.

예를 들어 입력이 다음과 같다면:

Hello

출력은 다음과 같아야 합니다.

Enter a sentence: Original: Hello
Characters: 5
Vowels: 2
Uppercase: HELLO

이 최종 과제는 프로젝트 전반에서 개발한 모든 텍스트 처리 기능을 하나로 모읍니다. 여기에는 입력 처리, strlen()을 사용한 문자 세기, 반복문과 조건문을 사용한 모음 세기, 그리고 toupper()를 사용한 대문자 변환이 포함됩니다. 프로그램은 텍스트 분석 결과를 깔끔하고 정리된 요약으로 표시해야 합니다.

직접 해보기

#include <stdio.h>
#include <string.h>
#include <ctype.h>

int main() {
    char sentence[200];
    
    printf("Enter a sentence: ");
    scanf("%s", sentence);
    
    printf("You entered: %s\n", sentence);
    
    int length = strlen(sentence);
    printf("Character count: %d\n", length);
    printf("Length: %d\n", length);
    
    int vowel_count = 0;
    for (int i = 0; i < length; i++) {
        char c = sentence[i];
        if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u' ||
            c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U') {
            vowel_count++;
        }
    }
    printf("Vowel count: %d\n", vowel_count);
    
    printf("Uppercase: ");
    for (int i = 0; i < length; i++) {
        printf("%c", toupper(sentence[i]));
    }
    printf("\n");
    
    return 0;
}

논리 & 흐름의 모든 레슨

직접 연습해 보세요: 온라인 C 컴파일러