题目描述 Description
在英语中,单数名词变为复数形式会有很多种不同的情况,比如直接加-s,-es,变y为i再加-es……现只考虑以下3种情况: 1.凡是以s、z、x、ch、sh结尾的词,在该词末尾加上后辍es构成复数; 2、以y结尾的名词,将y改变为i,再加es; 3、除以上情况以外的都直接加s。 给定一个单词,请输出其复数形式。
输入描述 Input Description
输入为一行,包含一个字符串,为一个单数名词(长度不超过15)。
输出描述 Output Description
输出为一行,包含一个字符串,为该单词的复数形式。
样例输入 Sample Input
fox
样例输出 Sample Output
foxes
1 #include <iostream>
2 #include <stdio.h>
3 #include <string.h>
4 using namespace std;
5
6 int main()
7 {
8 char s[30];
9 char d[]= "s",e[]= "es";
10 gets(s);
11 int len=strlen(s);
12 if((s[len-1]=='o'||s[len-1]=='s'||s[len-1]=='x')||((s[len-2]=='c'||s[len-2]=='s')&&(s[len-1]=='h')))
13 strcat(s,e);
14 else if(s[len-1]=='y')
15 s[len-1]='i',strcat(s,e);
16 else
17 strcat(s,d);
18 puts(s);
19
20 return 0;
21 }