/*--------------------------------------------------------------------*/ /* upper2.c */ /* Author: Bob Dondero */ /*--------------------------------------------------------------------*/ #include int main(void) /* Read text from stdin. Convert the first character of each "word" to uppercase. Write the result to stdout. Return 0. */ { int iChar; int iState = 0; while ((iChar = getchar()) != EOF) { switch (iState) { case 0: if ((iChar >= 'A') && (iChar <= 'Z')) { putchar(iChar); iState = 1; } else if ((iChar >= 'a') && (iChar <= 'z')) { putchar(iChar - 'a' + 'A'); iState = 1; } else { putchar(iChar); iState = 0; } break; case 1: if (((iChar >= 'A') && (iChar <= 'Z')) || ((iChar >= 'a') && (iChar <= 'z'))) { putchar(iChar); iState = 1; } else { putchar(iChar); iState = 0; } break; } } return 0; }