输入一个名词英语单词,按照英语语法规则把单数变成复数。规则如下:(1)以辅音字母y结尾,变y为i,再加es;(2)以s,x,ch,sh结尾,则加es;(3)以元音o结尾,则加es;(4)其他情况...
输入一个名词英语单词,按照英语语法规则把单数变成复数。规则如下: (1) 以辅音字母y结尾,变y为i,再加es; (2) 以s, x, ch, sh结尾,则加es; (3) 以元音o结尾,则加es; (4) 其他情况加上s。
输入一个字符串,仅含小写字母,长度不超过20。
Output
输出其对应的复数形式。
#include
#include
int main()
{
int i;
char word[31];
scanf("%s",word);
i=strlen(word);
if(word[i-1]=='y')
{
word[i-1]='i';
word[i]='e';
word[i+1]='s';
}
else if(word[i-1]=='s'||word[i-1]=='x')
{
word[i]='e';
word[i+1]='s';
}
else if(word[i-1]=='h')
{
if(word[i-2]=='s'||word[i-2]=='c')
{
word[i]='e';
word[i+1]='s';
}
}
else if(word[i-1]=='o')
{
word[i]='e';
word[i+1]='s';
}
else
word[i]='s';
puts(word);
}
我的代码,
为什么输出的答案会变复数后随机加其他东西。
展开