0
我设法搜索名称和电话号码。但是当for循环循环时,它也会打印“找不到名称”。结构(搜索)
void search(Contact *p, int size, char *tsearch)
{
int i = 0;
for(i = 0; i < size; i++){
if(strcmp(p[i].name, tsearch) == 0){
printf("Name = %s, Tel = %s \n", p[i].name, p[i].telno);
}
else
printf("Name not found!");
}
}
我应该在哪里放置'printf(“Name not found!”)'?
可能重复[如何显示循环中的一个结果](https://stackoverflow.com/questions/45847535/how-to-display-one-result-in-for-loop) – melpomene
或者你可以拥有一个表示搜索结果的“标志”集合,可以检查在“for”循环之外打印“not found”消息。或者,如果您只希望获得一个搜索结果,则可以在结果的“printf”之后休息一下。未找到的条件将在这里为'i == size'。 –