2021華為優招筆試験問題

11330 ワード

問題は文字列の各単語の最初のアルファベットを大文字にし、文字列の母音A、O、E、I、Uの出現はAA、OO、EE、II、UUで現れた.それらを正常なスタイルに変えて、読みやすいようにしてください.コード#コード#
#include 
int main()
{
    int i;
    int word;
    char str[200];
    int alphbet[256] = {0};
    while (gets(str) != NULL) {
        word = 0;
        for (i = 0; str[i] != '\0'; i++) {
            if (str[i] == ' ') {
                word = 0;
                printf(" ");
            }
            else if (word == 0) {

                word = 1;//           
                if (str[i] == 'O' || str[i] == 'A' || str[i] == 'E'//                   ???
                    || str[i] == 'I' || str[i] == 'U') {
                    ++alphbet[str[i]];
                    if (alphbet[str[i]] == 1) {
                        printf("%c", str[i]);
                    }
                    else
                        alphbet[str[i]] = 0;
                }
                else {
                    str[i] = str[i] - 32;//   
                    printf("%c", str[i]);
                }

            }
            else if (str[i] == 'O' || str[i] == 'A' || str[i] == 'E'
                || str[i] == 'I' || str[i] == 'U') {
                ++alphbet[str[i]];
                if (alphbet[str[i]] == 1) {
                    str[i] = str[i] + 32;//   
                    printf("%c", str[i]);
                }
                else
                    alphbet[str[i]] = 0;
            }
            else {
                printf("%c", ;str[i])
            }
        }
        printf("
"
); } return 0; }