1156: 单数变复数
时间限制: 1 Sec 内存限制: 128 MB
提交: 4137 解决: 2630
[状态] [讨论版] [提交] [命题人:admin]
题目描述
输入一个名词英语单词,按照英语语法规则把单数变成复数。规则如下:
(1) 以辅音字母y结尾,变y为i,再加es;
(2) 以s, x, ch, sh结尾,则加es;
(3) 以元音o结尾,则加es;
(4) 其他情况加上s。
输入
输入一个字符串,仅含小写字母,长度不超过20。
输出
输出其对应的复数形式。
样例输入 Copy
butterfly
样例输出 Copy
butterflies
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<limits.h>
int main()
{
char str[25];
int len,i;
scanf("%s",str);
len=strlen(str);
if(str[len-1]=='s'||str[len-1]=='x'||str[len-1]=='h'&&str[len-2]=='c'||str[len-1]=='h'&&str[len-2]=='s'||str[len-1]=='o')
printf("%ses",str);
else if(str[len-1]=='y')
{
for(i=0;i<len-1;i++)
printf("%c",str[i]);
printf("ies");
}
else
printf("%ss",str);
return 0;
}