新手第一贴,关于建立链表,代码敲出来,头文件不会弄,求大神指教
#include "stdlib.h"#define NULL 0
#define LEN sizeof(struct student)
struct student
{
long num;
float score;
struct student *next;
};
int n;
struct student *create() /*此函数带回一个指向链表头的指针*/
{
struct student *head,*p1,*p2;
n=0;
head=NULL;
p1=p2=(struct student*)malloc(LEN); //创建第一个结点
scanf("%d,%f",&p1->num,&p2->score);
p1->next=NULL;
while(p1->num!=0) //应该把结点加入链表
{
++n;
if (n==1) //是第一个结点,做表头
head=p1;
else
p2->next=p1; //不是第一个结点,做表尾
p2=p1;
p1=(struct student *)malloc(LEN); //开辟下一个结点
scanf("%d,%f",&p1->num,&p1->score);
p1->next=NULL;
}
free(p1);
return(head);
}
——————————————————这里显示scanf标识符无法识别,我加了stdio.h头文件又出现一大堆问题,怎么办??