#include <iostream>
#include <stdio.h>
#include <vector>
#include <string>
#include <string.h>
#include <sstream>
#include <stdlib.h>
#include <algorithm>
#include <cmath>
#include <ctype.h>
#include <iomanip>
using namespace std;
int main()
{
char entrada[100];
bool isTimeMaiscula=true;
fflush(stdin);
while(gets(entrada))
{
for(unsigned int i=0;entrada[i] != '\0' ;i++)
{
if(entrada[i] != ' ')
{
if(isTimeMaiscula)
{
//TEM QUE SER MAÍSCULA
if(isupper(entrada[i]))
{
isTimeMaiscula=false;
}
else
{
entrada[i] = toupper(entrada[i]);
isTimeMaiscula=false;
}
}
else
{
//TEM QUE SER MINÚSCULA
if(islower(entrada[i]))
{
isTimeMaiscula=true;
}
else
{
entrada[i] = tolower(entrada[i]);
isTimeMaiscula=true;
}
}
}
}
puts(entrada);
isTimeMaiscula = true;
fflush(stdin);
}
return 0;
}
Estava resolvendo um problema no URI no link: https://www.urionlinejudge.com.br/judge/pt/problems/view/1234
Notei que quando eu colocava o comando "fflush(stdin)" só imprimia a primeira entrada do arquivo e não consegui pensar numa hipótese para isso alguém poderia me dar algumas possíveis hipóteses?
OBS) Basta tirar o "fflush()" que resolver o problema.