猿问

求问,我创建了一个链表并查找第二个结点的数据,为什莫查找不出来值

#include<stdio.h>
#include<stdlib.h>
typedef struct node
{
 char data;
 struct node *next;
}node ,*linklist;  //定义了一个变量和整形变量
void InitList2(linklist *H);
void creatfromtail(linklist H);
node *screach(linklist H,int i);
int  main(void)
{
 linklist H;
 node *m;
 int i;
 InitList2(&H);//指针;
 printf("please input first form\n");
 creatfromtail(H);
 printf("please input i\n");
 scanf("%d",&i);
 m=screach(H,i);
 printf("%c",m->data);
}
void InitList2(linklist *H)//chuan的不是地址,是变量
{
 *H=(linklist)malloc(sizeof(node));
 (*H)->next=NULL;
}
void creatfromtail(linklist H)
{
    int flag=1;
    node *s;
    node *p;
    p=H;
    char c;
    while(flag)
    {
        c=getchar();
        if(c!='$')
        {
            s=(node *)malloc(sizeof(node));
            s->data=c;
            p->next=s;
            p=s;
        }
        else
        {
            flag=0;
            p->next=NULL;
        }
    }
}
node *screach(linklist H,int i)
{
    node *p;
    p=(node *)malloc(sizeof(node));
    int j;
    p=H;
    j=0;
    while((p->next!=NULL)&&j<i)
    {
        p=p->next;
        j++;
    }
    if(j==i)
    {
        return (p);
    }
    else
    {
        return NULL;
    }

}



intsunshine
浏览 1236回答 0
0回答
随时随地看视频慕课网APP
我要回答