Mam problem z sortowaniem alfabetycznym malejąco pojedynczych znaków. Sortuje dobrze póki nie trafi na słowo, które zawiera dwie takie same litery. Zamieszczam kawałek kodu:
char*tabB[D] = { NULL };
char **tabC[D] = { NULL };
scanf("%s", napis);
int ilosc = 0;
for (i = 0; i < sizeof(napis); i++)
{
if (napis[i] == NULL)
{
break;
}
ilosc++;
}
int j = 0;
for (i = 0; i<ilosc; i++)
{
tabC[j] = &tabB[i];
j++;
}
for (i = 0; i<j; i++)
{
printf("%c", **tabC[i]);
}
int min;
char bufor;
for (int i = 0; i<j - 1; i++)
{
min = i;
for (int k = i + 1; k<j; k++)
{
if (**tabC[k]>**tabC[min])
min = k;
}
bufor = **tabC[min];
**tabC[min] = **tabC[i];
**tabC[i] = bufor;
}
for (i = 0; i<j; i++)
{
printf("%c", **tabC[i]);
}