I'm writing a function to capitalize every lowercase character in a string. It takes a string from the user and that is the input to the function. My program works if the user doesn't enter spaces, but when there is a space in the string, the function ends.
#include <stdio.h>
char *uppercase(char *c) {
    int i = 0;
    while (c[i] != '\0') {
        if (123 > c[i] && c[i] > 96)
            c[i] = c[i] - 'a' + 'A';
        i++;
    }
    return c;
}
int main() {
    char input[100];
    printf("Enter the phrase: ");
    scanf("%s", input);
    printf("%s", uppercase(input));
    return 0;
}
Examples:
Input: test test
Output: TEST
Input: Hello
Output: HELLO
Input: How are you
Output: HOW
I think it has to do with the while statement? Thanks for the help.
 
     
    