Поставить слова предложения в алфавитном порядке, найти ошибку - C (СИ)
Формулировка задачи:
#include<stdio.h> #include<string.h> main () { char str[100]="Это была",slova[100],men[100]; int i,j; for (i=0,j=0;str[i]!='\0';i=i+1) {if (str[i]!=' ') slova[j]=str[i]; else {j=j+1; continue;}} for (j=0;slova[j]!='\0';j=j+1) {if (slova[j]>slova[j+1]) {men[100]=slova[j]; slova[j]=slova[j+1]; slova[j+1]=men[100];}} for (j=0;slova[j]!='\0';j=j+1) printf("%s ",slova[j]); }
Решение задачи: «Поставить слова предложения в алфавитном порядке, найти ошибку»
textual
Листинг программы
#include<stdio.h> #include<string.h> #include<locale.h> main () { setlocale(LC_ALL,"rus"); char str[100]="Это была сложная задача",slova[100],men[100]; int i,j; for (i=0,j=0;str[i]!='\0';i=i+1) {if (str[i]!=' ') slova[j]=str[i]; else {j=j+1; continue;}} for (j=0;slova[j]!='\0';j=j+1) {if (slova[j]>slova[j+1]) {men[100]=slova[j]; slova[j]=slova[j+1]; slova[j+1]=men[100];}} for (j=0;slova[j]!='\0';j=j+1) printf("%c ",slova[j]); }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы для работы с C
- Устанавливаем русскую локаль для работы с русским языком
- Объявляем переменные:
- str - строка, содержащая предложение для обработки
- slova - массив, в который будут добавляться слова из исходной строки
- men - массив, используемый для временного хранения слов при сортировке
- Задаем начальные значения переменных i и j равными 0
- Запускаем цикл, который будет перебирать символы исходной строки
- Если текущий символ не пробел, то добавляем его в массив slova
- Если текущий символ является пробелом, то увеличиваем значение переменной j на 1 и продолжаем выполнение цикла с следующей итерации
- Запускаем цикл, который будет перебирать слова в массиве slova
- Если текущее слово больше следующего слова, то меняем их местами
- Запускаем цикл, который будет выводить отсортированные слова на экран
- Условие выхода из циклов - когда встречается символ '\0', обозначающий конец строки или массива
- Выводим отсортированные слова на экран, разделяя их пробелами
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д