input passes all tests

This commit is contained in:
Jonas Hofmann 2025-10-31 02:10:20 +01:00
parent 46b6efbd69
commit 7414849901
4 changed files with 36 additions and 9 deletions

View File

@ -2,8 +2,6 @@
#include <string.h>
#include <ctype.h>
static char *buffer;
// TODO:
// eine Funktion implementieren, die ein einzelnes Wort aus einer Textdatei (words.txt) einliest und als C-String zurückgibt.
@ -27,20 +25,49 @@ char *readSingleWord(FILE *file)
int readWords(FILE *file, char words[][MAX_WORD_LEN], unsigned int maxWordCount)
{
int i = 0;
int numberOfReadWords = 0;
int firstLetter = 0;
int word = 0;
int wordChar = 0;
char currentChar = 0;
do
{
fgetc(file + i);
currentChar = fgetc(file);
if ((currentChar >= 'A') && (currentChar <= 'Z'))
{
if (!firstLetter)
{
firstLetter = 1;
}
words[word][wordChar] = currentChar;
wordChar++;
}
else if ((currentChar >= 'a') && (currentChar <= 'z'))
{
if (!firstLetter)
{
firstLetter = 1;
}
words[word][wordChar] = toupper(currentChar);
wordChar++;
}
else if (firstLetter)
{
words[word][wordChar] = '\0';
word++;
wordChar = 0;
firstLetter = 0;
}
i++;
} while (currentChar != EOF);
} while ((currentChar != EOF) && (word < maxWordCount));
return numberOfReadWords;
return word;
}

Binary file not shown.

Binary file not shown.