Первое, что вы делаете неправильно, это:
char *sentence[300];
Похоже, вы пытаетесь создать буфер из 300 символов, но на самом деле вы создаете массив300 указателей символов.Измените это на:
char sentence[300];
Затем вы хотите изменить это:
fgets(*sentence,300,stdin);
на
fgets(sentence,sizeof(sentence),stdin);
Затем вы хотите изменить
int length=strlen(*sentence);
до
int length=strlen(sentence);
Вы должны хорошо понимать, как работают строки в C. Если вы еще не прочитали хорошую вводную книгу по C, начните с нее.C - это не то, что вы собираетесь узнать, просто читая случайные страницы в Интернете и StackOverflow.