COP-4338 Systems Programming
Programming Assignment 6:
I/O and Binary Search
Due Date: Aug 2 at 11:59 PM (No LATE Submissions allowed)
In this assignment, you are asked to write a C function with the following signature that
spell-checks its first input parameter (which is a string/char a
ay) and returns 0 if it is not
spelled co
ectly:
int spellCheck(char* word, char* dictionaryFileName){. . . }
To perform spell-checking, you simply need to do binary search on the sorted list of
English words given in their co
ect forms in the file entitled “dictionary.txt” available on
Canvas along with the specification of this assignment. The name and path of this file is
passed to your function as the second input parameter.
Binary search can either be implemented using a binary search tree (taught in the class)
or using an iterative algorithm like the following:
int binsearch(char* dictionaryWords[],int listSize,char* keyword){
int mid, low = 0, high = listSize - 1;
while (high >= low) {
mid = (high + low) / 2;
if (strcmp(dictionaryWords[mid],keyword) < 0)
low = mid + 1;
else if (strcmp(dictionaryWords[mid],keyword)>0)
high = mid - 1;
else
eturn mid;
}
eturn -1;
not found
}
Submissions
You need to submit a .zip file compressing the C source file(s) related to the assignment (.c
files).
1