티스토리 뷰

8.다음과 같이 크기가  26인 알파벳 대문자 A부터 Z를 저장한 다음,사용자로부터 하나의 문자를 입력받아 그 문자를 제외한 나머지 문자를 차례대로 5개씩 5줄로 출력하는 프로그램을 작성하세요. 입력된 문자가 A부터 Z사이의 알파벳 대문자가 아닐 경우에는 메세지를 출력합니다.


입력)

제외할 문자를 입력하세요 : F


출력)

A B C D E

G H I J K

L M N O P

Q R S T U

V W X Y Z


입력)

제외할 문자를 입력하세요 : a


출력)

A~Z 사이의 문자가 아닙니다.



#include <stdio.h>
int main() { 
     char alphabet[26];

     for (char c = 65; c <= 90; c++)
            alphabet[c - 65] = c; 

     char to_exclude = 0; 
     printf("제외할 문자를 입력하세요: "); 
     scanf("%c", &to_exclude); 

     if (to_exclude < 65 || to_exclude > 90) { 
            printf("A~Z 사이의 문자가 아닙니다.\n");

            return -1; 
     }

     int is_excluded = 0; 

     for (unsigned int i = 0; i < 26; i++) { 
            if (i == to_exclude - 65) { 
                   is_excluded = 1; 
                   continue; 
            } 

            if ((i != 0 + is_excluded) && ((i - is_excluded) % 5 == 0))
                printf("\n");

            printf("%c", alphabet[i]); 
     } 
     printf("\n"); 
     return 0; 
} 
댓글
댓글쓰기 폼