while ((c=fgetc(read_me)) && !(c == ' ' || c == '\t' || c== '\n')) {}
Can you explain what the program is supposed to do please. Is it to ignore any word which contains a vowel at any position? Well, that would mean almost all words. Not sure what is intended.
There's not a lot I can say without posting actual code, and I think the point here is to think about what needs to be done in order to achieve the required result.
My test data Input:
If I was a blackbird, I'd whistle and sing
And I'd follow the ship that my true love sails in
And on the top riggings, I'd there build my nest
And I'd pillow my head on his lily white breast
I am a young maiden and my story is sad
For once I was courted by a brave sailor lad
He courted Josephine strongly by night and by day
But now my dear sailor is gone far away
and the output:
was blackbird, whistle sing
follow the ship that my true love sails
the top riggings, there build my nest
pillow my head his lily white breast
young maiden my story sad
For was courted by brave sailor lad
He courted Josephine strongly by night by day
But now my dear sailor gone far
The way I looked at it was this. Not only does the word starting with a vowel need to be omitted, but also any trailing spaces which follow that word. Otherwise the output looks strangely formatted with too many spaces. But the newline character should always be output, even if it follows a vowel word.
The actual programming logic - well each person will have their own approach. In my attempt, the main while loop contained three blocks (controlled by if/else if/else) to handle
1. whitespace,
2. a whole word starting with a vowel and its trailing spaces,
3. and lastly a whole word which doesn't start with a vowel.