Выделения последнего слова - C (СИ)
Формулировка задачи:
Написать программу выделения последнего слова из введенной строки *) и отображение его на экране. Гугл приводит ток на примеры в языке c++
Решение задачи: «Выделения последнего слова»
textual
Листинг программы
#include <stdio.h> #include <string.h> #include <ctype.h> int main(void) { char buf[BUFSIZ], * ptr; while ( printf("String: ") && fgets(buf, BUFSIZ, stdin) && *buf != '\n' ) { for ( ptr = buf + strlen(buf) - 1; ptr >= buf && isspace(*ptr); --ptr ) ; if ( ptr < buf ) { printf("Empty string!\n"); continue; } ptr[1] = '\0'; while ( ptr >= buf && ! isspace(*ptr) ) --ptr; printf("Last word: %s\n", ++ptr); } return 0; }
Объяснение кода листинга программы
В этом коде программа запрашивает у пользователя строку и выводит на экран последнее слово этой строки. Вот список действий, которые выполняются в этом коде:
- Объявление переменных: — buf — буфер для хранения строки, введенной пользователем; — ptr — указатель, помогающий выделить последнее слово.
- Ввод строки от пользователя с помощью функции fgets().
- Проверка на пустую строку. Если строка пустая, выводится сообщение об этом и цикл продолжается.
- Поиск последнего слова в строке с помощью цикла for и функции isspace().
- Если последнее слово пустое, выводится сообщение об этом и цикл продолжается.
- Указатель ptr устанавливается на первое символ последнего слова.
- Вывод последнего слова с помощью функции printf().
- Повторение действий с 2 по 7 для каждой строки, введенной пользователем.
- Возврат 0, что означает успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д