#include<stdio.h>
#include<stdlib.h>
struct node
{
int data;
struct node *next;
};
typedef struct node NODE;
NODE *create()
{
NODE *head,*p,*q;
int t;
head=(NODE*)malloc(sizeof(NODE));
p=head;//头结点即是当前的末结点
while(1)
{
printf("请输入一个整数成绩:");
scanf("%d",&t);
if(t<0) break;
q=(NODE*)malloc(sizeof(NODE));//q指向新结点
q->data=t;//指针只能用箭头
p->next=q;//新结点连接到链表中
p=q;//p指向新的末结点
}
p->next=NULL;//设置链表结束标志
return head;
}
int main(void)
{
NODE *h;
h=create();//创建链表,获得头指针
printf("头指针=%p\n",h);
return 0;
}