#include <stdio.h>
#include <ctype.h>
int isLegal(char theString[]);
int main(void) {
char word[50];
if (isLegal(word)) {
printf("%s is legal\n", word
); } else {
printf("%s is illegal\n", word
); }
return 0;
}
int isLegal(char theString[]) {
int legal = 0;
const char vowels[] = "AEIOUY";
for (int i = 0; theString[i] != '\0'; i++) {
char c
= toupper((unsigned char)theString
[i
]);
// check against vowels
for (int j = 0; vowels[j] != '\0'; j++) {
if (c == vowels[j]) {
legal = 1;
return legal; // we can stop as soon as we find a vowel
}
}
}
return legal;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxjdHlwZS5oPgoKaW50IGlzTGVnYWwoY2hhciB0aGVTdHJpbmdbXSk7CgppbnQgbWFpbih2b2lkKSB7CgljaGFyIHdvcmRbNTBdOwogICAgcHJpbnRmKCJFbnRlciB3b3JkOiAiKTsKICAgIHNjYW5mKCIlNDlzIiwgd29yZCk7CgogICAgaWYgKGlzTGVnYWwod29yZCkpIHsKICAgICAgICBwcmludGYoIiVzIGlzIGxlZ2FsXG4iLCB3b3JkKTsKICAgIH0gZWxzZSB7CiAgICAgICAgcHJpbnRmKCIlcyBpcyBpbGxlZ2FsXG4iLCB3b3JkKTsKICAgIH0KICAgIHJldHVybiAwOwp9CgppbnQgaXNMZWdhbChjaGFyIHRoZVN0cmluZ1tdKSB7CiAgICBpbnQgbGVnYWwgPSAwOwogICAgY29uc3QgY2hhciB2b3dlbHNbXSA9ICJBRUlPVVkiOwoKICAgIGZvciAoaW50IGkgPSAwOyB0aGVTdHJpbmdbaV0gIT0gJ1wwJzsgaSsrKSB7CiAgICAgICAgY2hhciBjID0gdG91cHBlcigodW5zaWduZWQgY2hhcil0aGVTdHJpbmdbaV0pOwogICAgICAgIAogICAgICAgIC8vIGNoZWNrIGFnYWluc3Qgdm93ZWxzCiAgICAgICAgZm9yIChpbnQgaiA9IDA7IHZvd2Vsc1tqXSAhPSAnXDAnOyBqKyspIHsKICAgICAgICAgICAgaWYgKGMgPT0gdm93ZWxzW2pdKSB7CiAgICAgICAgICAgICAgICBsZWdhbCA9IDE7CiAgICAgICAgICAgICAgICByZXR1cm4gbGVnYWw7IC8vIHdlIGNhbiBzdG9wIGFzIHNvb24gYXMgd2UgZmluZCBhIHZvd2VsCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gbGVnYWw7Cn0=