Отсортировать текст по алфавиту - C (СИ)
Формулировка задачи:
доброго времени суток!
нужно отсортировать текст по алфавиту (3 строки по 30 символов), справился с этой задачей лишь частично: смог отсортировать лишь строки, а не весь текст(массив), как нужно по заданию;
пример:
mama
dcba
в конечном итоге имею:
aamm
abcd
а должен:
aaabcdmm
Решение задачи: «Отсортировать текст по алфавиту»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <string.h> int compare (const void *a, const void *b) { return *(char*)a - *(char*)b; } int main(void) { int i; char str2[90], str[3][30] = {"mama", "dcba", "312"}; for (i=0; i < 3; i++) strcpy(&str2[strlen(str2)], str[i]); qsort (str2, strlen(str2), sizeof(char), compare); printf("%s\n", str2); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с памятью и строками.
- Определение функции сравнения, которая будет использоваться в функции сортировки.
- Инициализация массива строк для сортировки.
- Копирование содержимого массива строк в одну строку, в конце которой будет добавляется символ '\0'.
- Использование функции быстрой сортировки для сортировки строки.
- Вывод отсортированной строки на экран.
- Возврат 0, что означает успешное выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д