求帮助~~~!为什么我创建好一个链表输入数据之后程序返回的值不是头指针的地址?
#include <stdio.h>#include <stdlib.h>
#include <malloc.h>
#define NULL 0
typedef struct node
{
int coef; //系数
int expn; //指数
struct node *next;
}linklist;
linklist_creat(); //创建链表函数
linklist_show(linklist *p); //输出链表函数
linklist_add(linklist *Ax,linklist *Bx); //求和函数
int main()
{
linklist *Ax,*Bx;
Ax=linklist_creat();
linklist_show(Ax);
Bx=linklist_creat();
linklist_show(Bx);
linklist_add(Ax,Bx);
return 0;
}
linklist_creat()
{
int i,n;
linklist *head,*r,*s;
head=(linklist*)malloc(sizeof(linklist));
head->next=NULL;
s=head;
printf("请输入存储数据个数:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
r=(linklist*)malloc(sizeof(linklist));
printf("请输入第%d个数的系数:",i);
scanf("%d",&r->coef);
printf("请输入第%d个数的指数:",i);
scanf("%d",&r->expn);
r->next=NULL;s->next=r;r=s;
}
return head;
}