C language linked list query by serial number

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


ElemType Get_Elem(LNode *L , int  i){
    
        
    int j ;   LNode *p;
    // 如果i=1,那么不用进入循环直接获取第一个结点的值
    p=L->next;  j=1;      /*  使p指向第一个结点  */
    while  (p!=NULL && j<i){
    
    
    		//每次循环都会移动指针p,然后j计数,当条件不存在时,跳出循环。
           p=p->next;  j++;  
    }        /*  移动指针p , j计数  */
    if  (j!=i)  
        return(-32768);
    else      
        return(p->data);
    /*   p为NULL 表示i太大;  j>i表示i为0  */
}

Guess you like

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