функция выдирающая слова, дальше думаю понятно

int getword(char *input, char **words, int delim)
{
int cword = 0;
char *p, *p2;
p = input;
if((strchr(p, delim)) == NULL)
return cword;
if(*p == '\0')
return cword;
while(isspace(*p))
p++;
while(*p != '\0')
{
words[cword++] = p;
p2 = strchr(p, ' ');
if(p2 == NULL)
break;
*p2 = '\0';
p = p2 + 1;
}
return cword;
}