#include #define MAX_WORD_SIZE 100 int main() { char *wordp[MAX_WORD_SIZE] = {NULL}, word[MAX_WORD_SIZE] = {'\0'}; int word_number; void get_words_from_user(char word[], char *wordp[]); void print_word(char word[], char *wordp[], int word_number); get_words_from_user(word, wordp); while(1) { printf("Please enter word number to print:\n"); scanf("%d", &word_number); print_word(word, wordp, word_number); } } void get_words_from_user(char word[], char *wordp[]) { char character, prev_character = ' '; int placed_pointer_for_word = 0, pointer_index = 0, word_index = 0; while(character = getchar()) { if(character == '\n') { break; } if(placed_pointer_for_word == 0) { wordp[pointer_index] = &word[word_index]; pointer_index++; placed_pointer_for_word = 1; } if(character == ' ') { if(prev_character != ' ') { word[word_index] = '\0'; word_index++; placed_pointer_for_word = 0; } } else { word[word_index] = character; word_index++; } prev_character = character; } } void print_word(char word[], char *wordp[], int word_number) { if(word = wordp[word_number-1]) { printf("%s\n", word); } else { printf("Word number %d doesn't exist!\n", word_number); } putchar('\n'); }