Составить из двух заданных слов предложение, в котором слова будут упорядочены - C (СИ)
Формулировка задачи:
Сравнение строк. Составить из двух заданных слов (под словом будем понимать любую последовательность символов, не содержащую в себе пробельных символов) предложение, в котором слова будут упорядочены .
Решение задачи: «Составить из двух заданных слов предложение, в котором слова будут упорядочены»
textual
Листинг программы
#include <stdio.h> #include <string.h> #define WORD_LENGTH (64) #define get_word(w) ( scanf("%63s", (w)) == 1 ) int main(void) { char w1[WORD_LENGTH], w2[WORD_LENGTH]; int cmp; while ( printf("Two different words (max %d symbols for each): ", WORD_LENGTH - 1) && get_word(w1) && get_word(w2) && ( cmp = strcmp(w1, w2) ) ) printf("Alphabetically sorted: %s %s\n", ( cmp < 0 ) ? w1 : w2, ( cmp < 0 ) ? w2 : w1); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с файлами и строками
- Определение константы WORD_LENGTH, которая задает максимальное количество символов в словах
- Определение функции get_word, которая считывает слово из стандартного ввода и проверяет его на корректность (не более 63 символов)
- Создание двух массивов типа char w1 и w2 для хранения считанных слов
- Создание переменной cmp для сравнения строк
- Организация цикла while, который будет выполняться до тех пор, пока пользователь вводит два разных слова и результат сравнения не изменится
- Внутри цикла выводится приглашение для ввода двух слов
- Если слово успешно считывается с помощью функции get_word, то оно сохраняется в соответствующий массив
- Выполняется сравнение двух слов с помощью функции strcmp
- С помощью условного оператора if выводится первое или второе слово в зависимости от результата сравнения
- Цикл продолжается до тех пор, пока не будут введены два разных слова или не будет достигнут максимальный количество символов в словах
- В конце программы возвращается 0, что означает успешное выполнение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д