I'm trying to make this program such that the user could type any given string of characters, and the program would separate alphanumerical characters from the rest, print them into a second string, and finally print the final result into the screen.
I've already tried using scanf ("%[^\n]%*c", string);, but it doesn't seem to work since the size of the string is not specified beforehand, and is rather defined by STR_SIZE.
char string[STR_SIZE];
printf("please type in a string \n");
scanf("%s", string);
printf("string: \n %s \n", string);
int size = (strlen(string));
char alfanumerico[STR_SIZE];
int count = 0;
int count2 = 0;
while(count <= size)
{
    if(string[count] >= '0' && string[count] <= '9')
    {
        alfanumerico[count2] = string[count];
        count2++;
    }
    if(string[count] >= 'a' && string[count] <= 'z')
    {
        alfanumerico[count2] = string[count];
        count2++;
    }
    if(string[count] >= 'A' && string[count] <= 'Z')
    {
        alfanumerico[count2] = string[count];
        count2++;
    }
    if(string[count] ==' ')
    {
        alfanumerico[count2] = string[count];
        count2++;
    }
    count++;
}
printf("alphanumerical characters typed: \n %s \n", alfanumerico);
Given the user typed a string such as: -=-=[[][][]}}Hello 123 ```//././.
I expect the output to be: Hello 123
 
     
    