-2
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void){
char noun[25];
char plural[28];
fgets(noun,24,stdin);
strcpy(plural,noun);
int len=strlen(plural);
if(plural[len-2]=='h'||plural[len-2]=='s'){
plural[len-1]='e';
plural[len]='s';
plural[len+1]='\0';
}else if(plural[len-2]=='y'){
plural[len-2]='i';
plural[len-1]='e';
plural[len]='s';
plural[len+1]='\0';
}else{
plural[len-1]='s';
plural[len]='\0';
}
printf("The plural of noun %s is %s\n",noun,plural);
return 0;
}
出力は常にこれです:なぜprintf出力に新しい行がありますか?
私は最後に、\ n個のprintfの中央を入れていないにもかかわらず、
「名詞馬の複数の
は馬です」 。
あなたは使用している関数のマニュアルページを読んでいましたか?ヒント:答えは簡単に見つけることができます。 – Olaf
ヒント:「名詞」には何がありますか? – melpomene
私は技術的にはstrcpy()だけです。新しい行は追加されません。 – Andrew