Напишите программу, которая выводит последнее слово переданной её символьной строки - C (СИ)
Формулировка задачи:
Напишите программу, которая выводит последнее слово переданной её символьной строки.
Решение задачи: «Напишите программу, которая выводит последнее слово переданной её символьной строки»
textual
Листинг программы
#include "conio.h" #include "stdio.h" #include "windows.h" int main(){ SetConsoleCP(1251); SetConsoleOutputCP(1251); char * str = new char[1000]; printf("Введите строку:\n"); fgets(str, 1000, stdin); int n = -1, k; for (int i = 0; i < 1000; i++){ if (str[i] == ' '){ n = i; } if (str[i] == '\0'){ k = i; break; } } printf("Последнее слово:\n"); for (int i = n + 1; i < k; i++){ printf("%c", str[i]); } delete[] str; _getch(); return 0; }
Объяснение кода листинга программы
В этом коде:
- *Строка, введенная пользователем, сохраняется в переменной
str
типа `charс помощью функции
fgets()`.** - Переменная
n
инициализируется значением-1
, а переменнаяk
пока не инициализируется. - Цикл
for
проходит по всем символам строкиstr
. Если текущий символ является пробелом, то значение переменнойn
присваивается текущему индексу. Если текущий символ является нулевым (символом конца строки), то значение переменнойk
присваивается текущему индексу и цикл прерывается. - Цикл
for
проходит отn+1
доk-1
, выводя каждый символ на экран с помощью функцииprintf()
. - После окончания работы программы, переменная
str
удаляется с помощью функцииdelete[]
. - Функция
_getch()
используется для приостановки выполнения программы до тех пор, пока пользователь не нажмет клавишу. - Функция
main()
возвращает 0, что означает успешное завершение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д