1141:删除单词后缀
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 9088 通过数: 6742
【题目描述】
给定一个单词,如果该单词以er、ly或者ing后缀结尾, 则删除该后缀(题目保证删除后缀后的单词长度不为0), 否则不进行任何操作。
【输入】
输入一行,包含一个单词(单词中间没有空格,每个单词最大长度为32)。
【输出】
输出按照题目要求处理后的单词。
【输入样例】
referer
【输出样例】
refer
思路:strcmp()字符串比较函数用法:若s1、s2字符串相等,则返回零;若s1大于s2,则返回大于零的数;否则,则返回小于零的数。先判断ing后缀结尾,然后再判断2个字符结尾的 er,ly;
#include<cstdio>
#include<iostream>
#include<cstring>
#include<string>
using namespace std;
char s[32];
int main()
{
int l,i;
cin >> s;
l = strlen(s);//获取字符长度
if(strcmp(&s[l-3],"ing") == 0)//判断是否ing为结尾 三个后缀结尾
s[l-3] = '\0';//判断字符串是否输入完毕
if((strcmp(&s[l - 2],"er") == 0)||(strcmp(&s[l - 2],"ly") == 0))//2个后缀结尾
s[l-2] = '\0';//判断字符串是否输入完毕
puts(s);//输出
return 0;
}