📄 c09_10.c
字号:
/************************************************************************
函数功能:
在链表中查找某个数据项,如果有对应结点,则输出对应结点信息;否则输出错误提示
参数说明:
struct AddressList *head:所要查找链表的头结点指针,
int n: 所要查找结点的第几(n)项成员信息,
1:按姓名查; 2:按电话号码查; 3:按Email查。
char *string:所需查找某项成员信息的值
返回值说明:
struct AddressList *:如果未找到,指针为NULL;否则返回找到结点对应的指针
************************************************************************/
struct AddressList * find(struct AddressList *head,int n,char *string)
{
struct AddressList *p, *q = NULL;
int flag = 1; /*初始值为1,找到时为0*/
p = head;
while ((p!=NULL)&&(flag!=0)) /* 遍历未结束,且所需查找的结点未找到 */
{
switch (n)
{
case 1: flag = strcmp(string,p->name); break;
case 2: flag = strcmp(string,p->telephone); break;
case 3: flag = strcmp(string,p->e_mail); break;
default: break;
}
if (flag==0)
{
q = p; /* q 指向找到的结点 */
return q;
}
else
p = p->next;
}
return q;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -