diff --git a/Startcode/input.c b/Startcode/input.c index 5c15491..7cf0a8a 100644 --- a/Startcode/input.c +++ b/Startcode/input.c @@ -8,5 +8,40 @@ // Read words from file and store in 'words' array int readWords(FILE *file, char words[][MAX_WORD_LEN], unsigned int maxWordCount) { + int c = 0; + int count = 0; + int letterCount = 0; + while (count < maxWordCount) + { + while ((c = fgetc(file)) != EOF) //Leerzeichen prüfen + { + if (isspace(c) || !isalpha(c)) { + if (letterCount > 0) { + break; //Wort fertig eingelesen + } + + continue; // mehrere Leerzeichen oder Sonderzeichen überspringen + } + + if (letterCount < MAX_WORD_LEN - 1) //wörter Buchstabenweise einlesen + { + words[count][letterCount] = (char)toupper(c); + letterCount++; + } + } + + if (letterCount == 0) { + break; //kein weiteres Wort gefunden + } + + words[count][letterCount] = '\0'; + letterCount = 0; + count++; + + if (c == EOF) { + break; + } + } + return count; +} -}dhckhdkfhdjf \ No newline at end of file