此代码可成功编译,但在获得第一个输入后将终止。
我尝试解决了几个小时,但找不到实际问题。
strcmp命令会发生此问题吗?我试图解决 uri 1049 没问题,我写了这篇文章,但没有用。问题链接https://www.urionlinejudge.com.br/judge/en/problems/view/1049
#include <stdio.h>
#include <string.h>
int main()
{
char input[10],
first1[10]="vertebrado",
first2[10]="invertebrado",
seco1[10]="ave",
seco2[10]="mamifero",
seco3[10]="inesto",
seco4[10]="anelideo",
thi1[10]="carnivoro",
thi2[10]="onivoro",
thi3[10]="onivoro",
thi4[10]="herbivoro",
thi5[10]="hematofago",
thi6[10]="herbivoro",
thi7[10]="hematofago",
thi8[10]="onivoro";
scanf("%s",&input);
if(strcmp(input,first1)==0)
{
scanf("%s",&input);
if(strcmp(seco1,input)==0)
{
scanf("%s",&thi1);
if(strcmp(input,thi1))
{
printf("aguia");
}
else if(strcmp(input,thi2)==0)
{
printf("pomba");
}
}
else if(strcmp(seco2,input)==0)
{
scanf("%s",input);
if(strcmp(input,thi3)==0)
{
printf("homem");
}
else if(strcmp(input,thi4)==0)
{
printf("vaca");
}
}
}
else if(strcmp(input,first2)==0)
{
scanf("%s",&input);
if(strcmp(input,seco3)==0)
{
scanf("%s",&input);
if(strcmp(input,thi5)==0)
{
printf("pulga");
}
else if(strcmp(input,thi6)==0)
{
printf("lagarta");
}
}
else if(strcmp(input,seco4)==0)
{
scanf("%s",&input);
if(strcmp(input,thi7)==0)
{
printf("sanguessuga");
}
else if(strcmp(input,thi8)==0)
{
printf("minhoca");
}
}
}
}