You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
1.5 KiB
63 lines
1.5 KiB
13 years ago
|
#include <stdio.h>
|
||
|
|
||
|
int main(int argc, char *argv[])
|
||
|
{
|
||
13 years ago
|
if (argc < 2) {
|
||
|
fprintf(stderr, "ERROR: You must provide at least one argument.\n");
|
||
13 years ago
|
return 1;
|
||
|
}
|
||
|
|
||
13 years ago
|
int i;
|
||
|
int argn;
|
||
|
|
||
13 years ago
|
char letter;
|
||
|
int up_low_sep = (int)('a' - 'A');
|
||
|
int upper_floor = (int)'A';
|
||
|
int upper_ceil = (int)'Z';
|
||
|
|
||
13 years ago
|
for(argn = 1; argn < argc; argn++) {
|
||
|
for(i = 0; '\0' != (letter = argv[argn][i]); i++) {
|
||
|
int i_letter = (int)letter;
|
||
|
if (upper_floor < i_letter && i_letter < upper_ceil) {
|
||
|
letter = (char)(i_letter + up_low_sep);
|
||
|
}
|
||
|
|
||
13 years ago
|
switch(letter) {
|
||
|
case 'a':
|
||
|
printf("%d: 'a'\n", i);
|
||
|
break;
|
||
|
|
||
|
case 'e':
|
||
|
printf("%d: 'e'\n", i);
|
||
|
break;
|
||
|
|
||
|
case 'i':
|
||
|
printf("%d: 'i'\n", i);
|
||
|
break;
|
||
|
|
||
|
case 'o':
|
||
|
printf("%d: 'o'\n", i);
|
||
|
break;
|
||
|
|
||
|
case 'u':
|
||
|
printf("%d: 'u'\n", i);
|
||
|
break;
|
||
|
|
||
|
case 'y':
|
||
|
if (i > 2) {
|
||
|
printf("%d: 'Y'\n", i);
|
||
|
} else {
|
||
|
printf("%d: 'Y' isn't a vowel this time\n", i);
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
default:
|
||
|
printf("%d: '%c' is not a vowel\n", i, letter);
|
||
13 years ago
|
}
|
||
13 years ago
|
}
|
||
|
}
|
||
|
|
||
|
return 0;
|
||
|
}
|
||
|
|