Тема: Сортування слів (стрічок) за алфавітом з урахуванням літер і, є, ї, ґ
Доброго вечора.
Завдання:    Розробити функцію для порівняння двох українських слів за абетковим порядком. З клавіатури по одному ввести набір українських слів і занести їх у масив рядків. Використовуючи розроблену функцію, відсортувати введені слова за абетковим порядком.
Проблема полягає в тому, що в кодовій таблиці (наприклад windows-1251) коди вище згаданих літер йдуть не за порядком. Підкажіть будь ласка, як можна це реалізувати. Дякую.
P.S. програмую на чистому С
фрагмент коду:
#include <stdio.h>
#include <string.h>
#include <windows.h>
#define N 25
#define K 10
int EntArr(char (*)[]);
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    char arr[K][N];
    puts("-----Сортування слів в абетковому порядку-----");
    int kst=EntArr(arr);
    int j=1, i=0;
    char repl[N];
    if (stricmp(arr[i], arr[j])==1)
    {
    strcpy(repl, arr[i]);
    strcpy(arr[i], arr[j]);
    strcpy(arr[j], repl);
    }
    while (i<kst)
    {
        puts(arr[i]);
        i++;
    }
    return 0;
}
int EntArr (char mas[][N])
{
    int i=0;
    printf("\nВведення слів (max %d), для закінчення натисніть ENTER\n", K);
    for (; i!=K; )
    {
        printf("Введіть %d слово: ", i+1);
        gets(mas[i]);
        if (*mas[i]==0)
            return i;
        i++;
    }
    return i;
}