genping2008 发表于 2014-4-15 15:57:55

青玄 发表于 2014-4-15 15:57:56

struct student *creat()    //定义这个结构体的指针函数
{
      struct student *head;    //声明这个结构体的头部指针变量
      struct student *p1, *p2;   

      p1 = p2 = (struct student *)malloc(LEN);   //给定这两个变量的大小,也就是这个结构体的长度
      printf("Please enter the num :");   //提示输入
      scanf("%d", &p1->num);   //向结构体的第一个成员输入信息
      printf("Please enter the score :");
      scanf("%f", &p1->score);   //想结构体的第二个成员输入信息
      head = NULL;      
      n = 0;   
      
      while( p1->num )    //如果p1指向的是num的话
      {
            n++;                   //n就加1
            if( 1 == n )    //如果n=1的话
            {
                  head = p1;       //就将p1的地址给head ,也就是根节点   
            }
            else
            {
                  p2->next = p1;   //否则就将p1的地址给p2的下一个节点
            }
            p2 = p1;   //将p1的地址给p2,这样的话,就链起来了
            p1 = (struct student *)malloc(LEN);
            printf("\nPlease enter the num :");
            scanf("%d", &p1->num);
            printf("Please enter the score :");
            scanf("%f", &p1->score);
      }
      p2->next = NULL;   //然后就是直到p2的下一个节点为空为止
      return head;   //返回头部指针
}

无耐的小码 发表于 2014-4-17 19:28:35

你这样有意思??

牡丹花下死做鬼 发表于 2014-4-19 13:08:01

青玄 发表于 2014-4-16 01:03 static/image/common/back.gif
struct student *creat()    //定义这个结构体的指针函数
{
      struct student *head;    //声明这个结 ...

你还真有激情啊 O(∩_∩)O~

青玄 发表于 2014-4-19 14:57:28

牡丹花下死做鬼 发表于 2014-4-19 13:08 static/image/common/back.gif
你还真有激情啊 O(∩_∩)O~

哎!其实那!·你看!互相学习嘛!呵呵!{:2_27:}
页: [1]
查看完整版本: 谁能帮我解释下面这个创建链表函数的每一句有什么作用