Witam
Piszę funkcję, która ma za zadanie przekształcić stringa w zależności od tego ile ma znaków dużych lub małych. Jeśli mniej jest małych lub liczba małych i dużych znaków jest równa stringa zmieniamy do małych znaków. Jeśli liczba dużych jest większa zmieniamy na stringa z dużych znaków. Program poniżej
char *solve(const char *str)
{
char *result=(char*)malloc(sizeof(char)*strlen(str)+1);
memset(result,'\0',strlen(str)+1);
int lower=0,upper=0;
for(int i=0;i<strlen(str);i++)
if(isupper(str[i]))
upper+=1;
else
lower+=1;
if(lower>=upper)
for(int i=0;i<strlen(str);i++)
result[i]=tolower(str[i]);
else
for(int i=0;i<strlen(str);i++)
result[i]=toupper(str[i]);
return result;
}
Mam pytanie odnośnie tego czy zamiany na duże lub małe litery można dokonać za pomocą strlwr lub strupr. Jeśli tak to jak bo nie mogę znaleźć dobrego opisu funkcji
próbowałem
if(lower>=upper
return strlwr(str)
else
return strupr(str)
może ktoś pomóc
oryginałem
to co się w trakcie zmieniło, wg mnie niezbyt trafnie sformułowałeś.