Проверка последних трех букв введенного слова - C (СИ)
Формулировка задачи:
Помогите пожайлуста написать программу которая проверяет оканчиваются ли последние три букв на "ski"
Решение задачи: «Проверка последних трех букв введенного слова»
textual
Листинг программы
#include <stdio.h> #define N 30 int main(void) { char sl[N]; printf("Word: "); scanf("%s",sl); int ls,lo,i; char obr[N]="ski"; for(ls=0;sl[ls++];); for(lo=0;obr[lo++];); --lo;--ls; for(i=0;obr[i];i++) { if(obr[i]!=sl[ls-lo+i]) { printf("No!");break; } } if(i==lo)printf("Yes!"); return (0); }
Объяснение кода листинга программы
В этом коде:
- Объявлены переменные:
sl
- массив символов (строка), в который будет считываться слово.ls
- счётчик, который будет хранить количество символов (букв) в слове.lo
- счётчик, который будет хранить количество букв в проверяемом слове (название которогоobr
).i
- счётчик, используемый в цикле.
- Задано значение константы
N
(30). - В цикле с помощью функции
scanf
в массивsl
считывается слово (до 30 символов). - В цикле определяются количество символов в считанном слове (ls) и количество символов в проверяемом слове (lo).
- Последний символ в проверяемом слове и в считанном слове (если они равны) сравнивается с каждым символом в считанном слове (начиная с последнего). Если символы не равны, то выводится сообщение
No!
и программа завершается. - Если все символы совпадают, то выводится сообщение
Yes!
. - Значение 0 возвращается в конце программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д