C language linked list query by value

#include<stdio.h>
#include<math.h>
// #define 定义一个标识符来表示一个常量
#define  OK   1
#define  ERROR   -1
//  typedef 关键字来定义自己习惯的数据类型名称
typedef  int  Status ;
typedef  int  ElemType ; 
// struct 结构体
typedef  struct  Lnode{
    
       
    ElemType  data;     /*数据域,保存结点的值 */
    struct   Lnode  *next;      /*指针域*/
} LNode;        /*结点的类型 */

LNode *Locate_Node(LNode *L,int key)
/*  在以L为头结点的单链表中查找值为key的第一个结点  */ 
{
    
       
	// 将p指针指向第一个节点
    LNode *p=L->next;
    // 只要找不到data那么就一直循环,知道跳出循环
    while  ( p!=NULL&& p->data!=key)    
        p=p->next;
    // 如果找到了,返回改元素后面的所有链表元素
    if  (p->data==key)   
        return p;
    else  {
    
        
        printf("所要查找的结点不存在!!\n"); 
        // retutn(p);  
    }
}

Guess you like

Origin blog.csdn.net/weixin_46073538/article/details/114261744