c言語単一チェーンテーブルの構築


#include<stdlib.h>
#include<stdio.h>
typedef struct node 
{
  int data;
  struct node *next;
}*Link,LNode;

 Link inilink(Link head)
{
  head=(Link)malloc(sizeof(struct node));
  head->next=NULL;
  return head;
  /*head-pre=null;     */

}

void setLink(Link head)
{/*           */
  int y,i=0;
  Link q,p;
  printf("    ,   0   
"); p=head; scanf("%d",&y); while(y!=0) { q=(Link)malloc(sizeof(struct node)); q->data=y; p->next=q; /*q->pre=p */ p=q; i++; scanf("%d",&y); } p->next=NULL; head->data=i; /*head->pre=NULL; */ } void printLinkList(Link head) {/* */ Link p; p=head; while(p!=NULL) { printf("%6d",p->data); p=p->next; } printf("
"); } main() { Link ha; ha=inilink(ha); setLink(ha); printLinkList(ha); printf("
"); }