Write a program in C to check a file containing words in each line against another file. "[login to view URL]" (ATTACHED).
The program should reach in a dictionary of words ([login to view URL]) and store it in an array.
The program should then read words, one at a time, from the user-given input file.
Each word should be compared to the dictionary. If an exact match is found, the program should continue to the next word.
If no exact match is found, then the program should begin searching for suitable suggestions for replacement.
The search for replacement words should work like this.
Let N be the length of the original input word, minus 1. Starting with that value of N, the program should search for any exact matches of the first N characters of the input word with any words in the dictionary, and add them to a suggestion list. Following that, the program should search for any exact matches of an N substring anywhere inside the input word, as compared to anywhere inside a dictionary word. Decrease the value of N by 1, and repeat. This process should stop when 10 words have been suggested, or when N reaches 0.
The program should provide the list of suggestions to the user through a simple text menu.
One option in that menu should be to keep the original word.
Either upon verifying that the original word is found in the dictionary, or upon the user selecting a replacement, the program should write the appropriate word to an output file.
The program should discover the names of both the input file and the output file from command line arguments.